Сбой сборки без указанной причины в Segger Embedded Studio после добавления пользовательских исходных файлов
Я модифицирую простой пример проекта (мигающий) из nRF SDK. Я добавил файл заголовка и файл.c в новую папку внутри каталога проекта, а затем добавил этот путь./lib
к общему препроцессору user include directories
. Затем я добавил заголовок вmain.c
. Я могу скомпилировать новую библиотеку самостоятельно, но когда я собираю весь проект, я получаюBuild failed
ошибка без указания причины для продолжения.
Вот изображение этого:
Кто-нибудь здесь знает, как это победить?
2 ответа
Я специально не использовал Segger Studio, но, похоже, под ним находится CrossWorks IDE.
В CrossWorks вам необходимо сделать следующее:
- Загрузите и установите все соответствующие библиотеки из среды IDE, выбрав Инструменты -> Пакеты -> Установить пакеты. Возьмите свой конкретный целевой MCU, а также любые конкретные платы или библиотеки, которые вы будете использовать. В случае, если некоторые необходимые L здесь не хватают, вы будете получать очень странные ошибки.
В проекте щелкните на самом названии проекта в "проводнике проекта". Затем в окне свойств проверьте настройки (это немного отличается в разных версиях CrossWorks, возможно, придется щелкнуть правой кнопкой мыши и выбрать свойства в более старых версиях). В разделе "каталоги, включаемые пользователем" должно быть что-то вроде этого:
$(DeviceIncludePath) $(TargetsDir)/NameOfMCU/Include $(PackagesDir)/CMSIS_4/CMSIS/Include $(ProjectDir)/NameOfDirectory
Где "NameOfMCU" - это имя используемого семейства MCU, CMSIS должен присутствовать, если вы используете любую ARM, "NameOfDirectory" - это имя вашего настраиваемого каталога (вы можете добавить несколько).
Кроме того, прежде чем переключаться на сборку выпуска, сначала запустите отладочную сборку.