Источник: Технологии делают мечты больше
Автор: Ли Сяояо
Мы часто используем статические или динамические библиотеки, поэтому как использовать файлы статических библиотек при использовании s32k144 NXP? (*.a)
добавить в S32 Design Studio GCC
Что насчет проекта?
В этой статье описаны два подхода, которые отличаются друг от друга тем, как обновления библиотеки отражаются в процессе сборки проекта.
Этот подход предполагает, что библиотека не изменится, обновления библиотеки не вызовут процесс пересборки проекта, если библиотека изменится, проект необходимо будет очистить вручную (при условии, что другие исходные файлы не изменились), и ссылки на следующую сборку обновленная библиотека.
Нажмите Project Properties -> C/C++ Build -> Settings -> Standard S32DS C Linker -> Libraries
, Как показано ниже
Обратите внимание, что GCC по умолчанию добавляет префикс «lib» и расширение «.a» к имени библиотеки, введенному в диалоговом окне выше.
В приведенном выше примере компоновщик GCC будет искать файл библиотеки с именем «libtestlib.a» в папке «c:\my_libs», и если библиотека не будет найдена, произойдет ошибка компоновщика.
Для имен пользовательских библиотек добавьте двоеточие «:» в начало имени библиотеки, чтобы отключить расширение префикса/расширения по умолчанию. Компоновщик GCC теперь ищет имя файла «testlib.lib» в следующем примере:
Если статическая библиотека изменилась - «Touched» иногда требует перестройки проекта, и в этом случае библиотеку следует добавить. В разных диалогах проекта:
НажмитеProject Properties -> C/C++ Build -> Settings -> Standard S32DS C Linker -> Miscellaneous -> Other objects
, Как показано ниже
Элементы в списке «Другие объекты» передаются в переменную make-файла USER_OBJS, которая представляет собой автоматически создаваемое правило make-файла (elf) для цели сборки.