У меня есть проект CortexM0, использующий пользовательский Makefile, который успешно компилируется и отлаживается на 1-м компьютере.Сейчас пытаюсь перенести проект на второй Mac.Та же версия Eclipse.
При сборке я получаю ошибку компоновщика:
EclipseApr2019/gcc-arm-none-eabi-5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld: cannot find -lg
Мой файл make выглядит следующим образом (извлечение):
@ echo "path="$(TOOLS)
$(TOOLS)arm-none-eabi-gcc -n -v -mcpu=cortex-m0 -mthumb -g -nostartfiles -T STM32F031C6_simple.ld main.c StartUp_simple.s -o $(NAME).elf
Я пытался добавить каталог инструментов ARM gcc в переменную PATH в Проекте, но безуспешно.
Я бы добавил опцию -l на этапе компоновки в make-файле, но не знаюпочему эта библиотека загружается или где она находится.Мой код только делает серию сдвигов и читает / пишет в регистры на MCU.Сборка на 1-м компьютере работала нормально, без указания местоположения библиотеки следующим образом.
Учитывая, что у меня есть собственный make-файл, и я не генерирую Makefile автоматически, нет никаких настроек инструмента (и пути поиска библиотеки), доступных в Properties / CC++ Build / Settings.
- Что такое библиотека "g", в которую загружается компоновщик?
- Где это?
- В Eclipse, как я могу указать компоновщик на библиотеку?
- Почему мне не нужно было делать это раньше?
- Каков общий совет по разработке проекта Eclipse с настраиваемым make-файлом, чтобы сделать его максимально переносимым между компьютерами?
Спасибо.
Eclipse IDE для разработчиков на C / C ++ Версия: 2019-03 (4.11.0)