Как импортировать существующий проект openocd make-файла в CLion - PullRequest
0 голосов
/ 10 июля 2019

Проблема

Я начал работать над существующим проектом stm32 с уже настроенным make-файлом.Я установил arm-none-eabi toolchain и openocd и смог прошить / отладить с помощью make-файла из командной строки.

Я хотел бы использовать CLion для разработки и отладки этого проекта, но столкнулся с некоторыми трудностямипоскольку CLion изначально не поддерживает makefile.Я использую CLion 2019.1 на OSX 10.14.4.

Что я пробовал

С тех пор, как CLion 2019.1 представил официальную поддержку встроенной разработки с использованием openocd (https://www.jetbrains.com/help/clion/2019.1/embedded-development.html), я первыйпопытался создать новый проект, используя руководство на приведенной выше веб-странице, и вставив в мои исходные коды, а также переведя make-файл в его шаблон CMake. Но так как сам make-файл сложен, и я новичок в CMake, мне не повезлозаставить его скомпилировать с CMake.

Затем второй метод, который я попробовал, - это использовать существующий make-файл для компиляции и создать пользовательскую цель, используя скомпилированный двоичный файл для прошивки и отладки.

Я былЧтобы найти обходной путь, сначала нажмите New CMake Project from Sources и прокомментируйте сгенерированный add_executable(...) в CMakeLists.txt, а затем добавьте следующую строку:

add_custom_target(upload COMMAND make)

А затем в конфигурации Run / Debug я добавилцель OpenOCD Download & Run и установите цель в качестве пользовательской цели upload, затем установите исполняемый файл в файл elf, сгенерированный makefile. Вот screenshot.

Результат

Мне удалось прошить и отладить эту конфигурацию, но есть две проблемы.

  • Моя пользовательская цель, похоже, нена самом деле выполните команду make, поэтому мне пришлось пойти в терминал и набрать make, чтобы скомпилировать код в файл elf, прежде чем нажимать «Run» или «Debug» в CLion, чтобы изменения в коде вступили в силу.

  • Все мои исходные коды помечены как "Этот файл не принадлежит ни к одной цели проекта", и все полезные функции анализа кода не работают для них.Это из-за того, что я закомментировал «add_executable» в CMakeList, поэтому раскомментирование их решает проблему.Но мне приходилось комментировать их каждый раз перед «Выполнить» или «Отладка».

Мне кажется, что это проблема с комментариями при импорте проекта в CLion.Мне интересно, если у кого-то здесь была подобная борьба и есть лучшее решение.

...