Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Arm-none-eabi-g++ компилятор
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
sawimuzo
Здравствуйте!
Подскажите, пожалуйста, мне необходимо скомпилировать и запустить простейший код на C++ под ARM.
Пытаюсь сделать:

$ arm-none-eabi-g++ -mthumb -mcpu=cortex-m3 -static --specs=nosys.specs test.cpp

На выходе получаю файл:

$ file a.out
a.out: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, not stripped


При запуске:

$ qemu-arm -cpu cortex-m3 a.out
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Ошибка сегментирования (core dumped)


В чем моя ошибка? Запуск производится на Fedora
scifi
Вот тут, например, некто запустил простейшую программу для ARM на qemu.
Я так понял, qemu принимает двоичный образ кода, который следует исполнять. Так что там надо потрудиться, чтобы сформировать этот образ в правильном виде.
ataradov
Не знаю поможет-ли, но нашел проект из 2012. Не Cortex-M3, очевидно, но такой способ позволял запустить сырые бинарники без ОС.
CODE
all:
    arm-none-eabi-as -mcpu=arm926ej-s -g startup.s -o startup.o
    arm-none-eabi-gcc -c -mcpu=arm926ej-s -g test.c -o test.o
    arm-none-eabi-ld -T test.ld test.o startup.o -o test.elf
    arm-none-eabi-objcopy -O binary test.elf test.bin

run:
    @qemu-system-arm -M versatilepb -m 32M -nographic -semihosting -kernel test.bin

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.