BSACPLD 15 10 декабря, 2019 Опубликовано 10 декабря, 2019 · Жалоба Добрый день, коллеги! Сейчас я занимаюсь тем, что пробую разобраться с настройкой компилятора и отладчика для SCR1 от Syntacore. https://syntacore.com/page/products/processor-ip/scr1 GCC и GDB собрал и настроил. Из командной строки работает. Теперь хочу прикрутить к этому делу QtCreator в качестве IDE. Делаю как по мануалу, но при создании проекта вылезает ошибка: /usr/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake:52: error: The C compiler "/home/sergey/riscv-gcc/bin/riscv64-unknown-elf-gcc" is not able to compile a simple test program. It fails with the following output: Change Dir: /tmp/QtCreator-EcKky4/qtc-cmake-XXfkJdCv/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_820e2/fast" /usr/bin/make -f CMakeFiles/cmTC_820e2.dir/build.make CMakeFiles/cmTC_820e2.dir/build make[1]: вход в каталог «/tmp/QtCreator-EcKky4/qtc-cmake-XXfkJdCv/CMakeFiles/CMakeTmp» Building C object CMakeFiles/cmTC_820e2.dir/testCCompiler.c.o /home/sergey/riscv-gcc/bin/riscv64-unknown-elf-gcc -o CMakeFiles/cmTC_820e2.dir/testCCompiler.c.o -c /tmp/QtCreator-EcKky4/qtc-cmake-XXfkJdCv/CMakeFiles/CMakeTmp/testCCompiler.c Linking C executable cmTC_820e2 /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_820e2.dir/link.txt --verbose=1 /home/sergey/riscv-gcc/bin/riscv64-unknown-elf-gcc -rdynamic CMakeFiles/cmTC_820e2.dir/testCCompiler.c.o -o cmTC_820e2 riscv64-unknown-elf-gcc: error: unrecognized command line option '-rdynamic' CMakeFiles/cmTC_820e2.dir/build.make:97: recipe for target 'cmTC_820e2' failed make[1]: *** [cmTC_820e2] Error 1 make[1]: выход из каталога «/tmp/QtCreator-EcKky4/qtc-cmake-XXfkJdCv/CMakeFiles/CMakeTmp» Makefile:126: recipe for target 'cmTC_820e2/fast' failed make: *** [cmTC_820e2/fast] Error 2 Помогите, пожалуйста, разобраться в чем проблема. Мануал: https://doc.qt.io/qtcreator/creator-developing-baremetal.html Настройки QtCreator: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 10 декабря, 2019 Опубликовано 10 декабря, 2019 · Жалоба Из cmake может rdynamic убрать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
BSACPLD 15 10 декабря, 2019 Опубликовано 10 декабря, 2019 · Жалоба 25 minutes ago, new123 said: Из cmake может rdynamic убрать? А как это можно сделать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 10 декабря, 2019 Опубликовано 10 декабря, 2019 · Жалоба 3 minutes ago, BSACPLD said: А как это можно сделать? В CMakeList я бы сделал так SET(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "") но у вас там QT, подозревая в CMake configuration добавить CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS="" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
BSACPLD 15 10 декабря, 2019 Опубликовано 10 декабря, 2019 · Жалоба Не помогло :( Пробовал и в CMakeList.txt и в CMake configuration. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
seniorandre 0 26 декабря, 2019 Опубликовано 26 декабря, 2019 · Жалоба По опыту работы с ARM в креаторе можно сказать следующее: 1. Более адекватно с BareMetal себя ведет QBS, он по крайней мере не тащит ни какие настройки, если ты их не указал. В последней версии креатора и QBS появились примеры для работы с арм, соотв много можно сделать по аналогии. Примеры лежат лежат в каталоге с QBS. 2. С cmake я тестовый проект для ARM (STM) собрал и он вроде даже заработал, но надо обязательно указать cmake_system_name = Generic - в этом случае он выключает все лишние опции компилятора. Также надо выключить опцию проверки компиляторов, arm-eabi не проходит этот тест с дефолтными настройками линкера. Ваша ошибка именно на этот тест. SET(CMAKE_CROSSCOMPILING:INTERNAL ON) SET(CMAKE_SYSTEM:INTERNAL Generic) SET(CMAKE_SYSTEM_NAME Generic) SET(CMAKE_CXX_COMPILER_FORCED:INTERNAL ON) SET(CMAKE_C_COMPILER_FORCED:INTERNAL ON) Вот это вас должно спасти, но лучше перейти на QBS, меньше будет проблем Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться