Страницы

Поиск по вопросам

пятница, 24 января 2020 г.

uncaught target signal 11 в qemu для arm при сборке с помощью arm-none-eabi-g++

#cpp #arm #qemu


Мне необходимо скомпилировать и запустить простейший код на 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.
Код:

#include 
int main()
{
    std::cout << "Hello World!" << std::endl;
    return 0;
} 

    


Ответы

Ответ 1



Решение: $ arm-none-eabi-g++ -mthumb -mcpu=cortex-m3 --specs=rdimon.specs -Wl,--start-group -lgcc -lc -lm -lrdimon -Wl,--end-group -o test test.cpp Запуск: $ qemu-arm -cpu cortex-m3 ./test Вывод: Hello World!

Комментариев нет:

Отправить комментарий