LINUX.ORG.RU

История изменений

Исправление KivApple, (текущая версия) :

И тут есть два варианта:

1) Перезаписать переменные CMAKE_C_COMPILER и CMAKE_CXX_COMPILER после директивы project. Это костыль, ибо не будет работать проверка компилятора и некоторые другие внутренние механизмы CMake. С тем же успехом можно пройтись sed по итоговому Makefile и заменить gcc на avr-gcc.

2) Указать тулчайн с помощью параметра командной строки CMake. То есть через настройки IDE. Зачем? Это тавтология. Прошивка и так жёстко привязана к конкретному тулчайну. При смене микроконтроллера придётся править исходники и изменение CMakeLists.txt - самое простое.

Какой профит от неуказывания тулчайна в файле проекта прошивки? Какой НЕпрофит я знаю - лишние телодвижения при компиляции проекта, либо при импорте проекта в IDE. А какой профит? То что ты можешь по-быстрому без правки проектного файла скомпилировать прошивку для AVR компилятором для ARM и увидеть тонны ошибок компиляции?

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

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

Исправление KivApple, :

И тут есть два варианта:

1) Перезаписать переменные CMAKE_C_COMPILER и CMAKE_CXX_COMPILER после директивы project. Это костыль, ибо не будет работать проверка компилятора и некоторые другие внутренние механизмы CMake. С тем же успехом можно пройтись sed по итоговому Makefile и заменить gcc на avr-gcc.

2) Указать тулчайн с помощью параметра командной строки CMake. То есть через настройки IDE. Зачем? Это тавтология. Прошивка и так жёстко привязана к конкретному тулчайну. При смене микроконтроллера придётся править исходники и изменение CMakeLists.txt - самое простое.

Какой профит от неуказывания тулчайна в файле проекта прошивки? Какой НЕпрофит я знаю - лишние телодвижения при компиляции проекта, либо при импорте проекта в IDE. А какой профит? То что ты можешь по-быстрому без правки проектного файла скомпилировать прошивку для AVR компилятором для ARM и увидеть тонны ошибок компиляции?

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

Исправление KivApple, :

И тут есть два варианта:

1) Перезаписать переменные CMAKE_C_COMPILER и CMAKE_CXX_COMPILER после директивы project. Это костыль, ибо не будет работать проверка компилятора и некоторые другие внутренние механизмы CMake. С тем же успехом можно пройтись sed по итоговому Makefile и заменить gcc на avr-gcc.

2) Указать тулчайн с помощью параметра командной строки CMake. То есть через настройки IDE. Зачем? Это тавтология. Прошивка и так жёстко привязана к конкретному тулчайну. При смене микроконтроллера придётся править исходники и изменение CMakeLists.txt - самое простое.

Какой профит от неуказывания тулчайна в файле проекта прошивки? Какой НЕпрофит я знаю - лишние телодвижения при компиляции проекта, либо при импорте проекта в IDE. А какой профит? То что ты можешь по-быстрому без правки проектного файла скомпилировать прошивку для AVR компилятором для ARM и увидеть тонны ошибок компиляции?

Исходная версия KivApple, :

И тут есть два варианта:

1) Перезаписать переменные CMAKE_C_COMPILER и CMAKE_CXX_COMPILER после директивы project. Это костыль, ибо не будет работать проверка компилятора и некоторые другие внутренние механизмы CMake.

2) Указать тулчайн с помощью параметра командной строки CMake. То есть через настройки IDE. Зачем? Это тавтология. Прошивка и так жёстко привязана к конкретному тулчайну. При смене микроконтроллера придётся править исходники и изменение CMakeLists.txt - самое простое.

Какой профит от неуказывания тулчайна в файле проекта прошивки? Какой НЕпрофит я знаю - лишние телодвижения при компиляции проекта, либо при импорте проекта в IDE. А какой профит? То что ты можешь по-быстрому без правки проектного файла скомпилировать прошивку для AVR компилятором для ARM и увидеть тонны ошибок компиляции?