Предоставить несколько вариантов набора инструментов в CMake - PullRequest
0 голосов
/ 16 декабря 2018

У меня есть встроенный проект для платформы ARM, в частности, aarch64.

До сих пор я использовал Make.Я недавно установил CMake без особых проблем.Я перешел на CMake, потому что у меня сложилось впечатление, что это более современный инструмент для сборки, который позволил бы более разумную конфигурацию.

Например, я могу скомпилировать свой проект с использованием разных наборов инструментов (aarch64-elf-gcc-linaro, aarch64-linux-gnu-gcc, ...) и я хотел бы, чтобы CMake попытался установить, установлен ли какой-либо из них в системе, и использовать тот, который найден первым по умолчанию.

Возможно ли это (или подразумевалось)в)?Я ожидал бы, что это будет легким подвигом для инструмента, но после поиска некоторое время я не могу найти правильный путь.

1 Ответ

0 голосов
/ 17 декабря 2018

Да, вы можете сделать свой проект CMake для поиска доступных цепочек инструментов, установленных в вашей ОС, выбрать одну и скомпилировать ваш проект.Я также пишу программу для CMake для встроенного проекта ARM, потому что теперь она универсальна для переноса между различными системами ОС Windows и Unix.В Linux установлена ​​ ARM ToolChain , а в Windows - Keil-MDK .Если у вас есть разные цепочки инструментов на выбор, вы можете написать сценарий CMake, который будет искать пути с помощью команды, такой как find_path () , а затем вызвать правильный скрипт "toolchianxx.cmake" с правильными флагами компилятора для выбранного компилятора.

В вашей конкретной проблеме просто используйте команды find_path и используйте совпадения, чтобы найти установленные компиляторы в «заранее заданных» известных путях.

...