Как открыть файл в clion

Обновлено: 16.05.2024

Основным инструментом для создания, тестирования и развертывания программного обеспечения является CMake Cmake широко используется и поддерживается многими IDE, что означает, что пользователь может свободно выбирать свою собственную среду разработки.

Настройка среды разработки для создания управляющих приложений отличается для каждой машины. Пожалуйста, выберите используемую операционную систему:

Установить инструменты сборки

Перед установкой Clion важно установить необходимые для сборки инструменты

Установка CLion для Linux

Предупреждение

Обязательно выполняйте автономную установку! НЕ устанавливайте с помощью защелки или плоской упаковки; при использовании этих параметров установки наблюдалось неожиданное поведение.

Чтобы использовать Clion, вам необходимо создать учетную запись Jetbrains и начать с бесплатного пробного периода.

Установка плагина шаблонов Motorcortex (для clion)

Первым шагом после установки Clion является установка плагина Motorcortex Templates. Этот подключаемый модуль предоставит вам возможность создать новый проект Motorcortex.

В главном меню в левом верхнем углу откройте: Файл → Настройки , затем найдите меню Плагины.

В меню плагинов найдите Motorcortex .

  1. Установите плагин Motorcortex Templates и перезапустите IDE.

После установки шаблонов Motorcortex и перезапуска Clion вы можете создавать новые проекты Motorcortex в главном меню.

  1. В главном меню откройте: Файл → Новый проект , во всплывающем окне под C++ выберите C++ Motorcortex, выберите место, где вы хотите сохранить свой проект, и нажмите кнопку Создать .
  1. Поздравляем, теперь вы можете приступить к разработке приложения Motorcotex.

Инструментарий разработки Motorcortex

При разработке приложений Motorcortex есть два варианта:

  • Используйте удаленную разработку и скомпилируйте приложение в целевой системе Motorcortex;
  • Выполните кросс-компиляцию на своем ПК для разработки и разверните исполняемый файл в целевой системе Motorcortex.

Первый метод прост в настройке, он не требует дополнительных зависимостей, однако недостатком является то, что время компиляции для больших проектов может быть значительным. Второй метод решает эту проблему, но требует настройки набора инструментов для кросс-компиляции.

Настройка кросс-компиляции (в Clion)

Для кросс-компиляции вы используете … (с удаленными библиотеками устройств).

Установите набор инструментов Motorcortex в вашей системе

Для кросс-компиляции вам понадобится Motorcortex SDK. Вы можете загрузить SDK (Software Developement Kit) из магазина motorcortex.io, нажав кнопку загрузки ниже.

Распакуйте архив и поместите файл .sh в нужную папку.

В терминале перейдите в папку и запустите файл .sh из терминала, например:

  1. Вам будет предложено ввести целевой каталог, в который нужно установить SDK. Рекомендуется хранить SDK в домашней папке, где права администратора не требуются, например:

Монтирование Sysroot в вашей системе

Первым шагом к кросс-компиляции является подключение к вашей системе каталога Sysroot, который используется для кросс-компиляции. `Sysroot – это каталог, который считается корневым каталогом для размещения заголовков и библиотек вашего приложения.

  1. Создайте новую пару ключей с помощью следующей команды.
  1. Используйте ssh-copy-id для предоставления временного доступа без пароля к удаленному хосту Motorcortex. Если вас попросят ввести пароль, используйте vectioneer .
  1. Создайте папку для монтирования удаленной файловой системы Motorcortex с помощью следующей команды.
    1. Убедитесь, что sshfs установлен с помощью следующей команды:
      1. Смонтируйте файловую систему Motorcortex с помощью следующей команды:

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

      Настроить набор инструментов в clion.

      Настройте пути компилятора для использования цепочки инструментов кросс-компиляции Motorcortex.

      Открыть файл → Настройки → Развертывание выполнения сборки → Связки инструментов.

      Создайте новый System Toolchain с именем motorcortex .

      Заполните пути Make, C Compiler и C++ Compiler, чтобы указать Motorcortex SDK, как показано ниже.


      Настройка подключаемого модуля цепочки инструментов

      Настройте путь sysroot для использования заголовков и библиотек с удаленного хоста.

      1. Откройте «Файл» → «Настройки» → «Сборка, выполнение, развертывание» → **Motorcortex SDK и укажите путь Sysroot к смонтированной папке (mcx-sysroot).
      Добавить соединение для развертывания на удаленный хост (ЭТО ЕЩЕ НУЖНО В НОВОЙ ВЕРСИИ, АЛЕКСЕЙ?)

      Добавьте подключение к удаленному хосту Motorcortex. Откройте Инструменты → Развертывание → Конфигурация, добавьте новое соединение SFTP с именем mcx-host.

      выберите или добавьте конфигурацию ssh.

      Нажмите кнопку Test Connection, чтобы убедиться в правильности введенных данных.

      Нажмите кнопку Автоопределение, чтобы задать корневой путь. Снимите флажок «Видимый только для этого проекта», чтобы этот хост был виден во всех проектах.


      Кросс-компиляция приложений Motorcortex.

      выбрать mcx динги

      Сохранить пароль

      профиль развертывания на mxc-host

      1. В CLion откройте меню конфигурации проекта.


      1. Нажмите + и выберите Удаленное приложение Motorcortex. В поле профиля развертывания выберите удаленный хост Motorcortex.


      скопировать папку конфигурации

      В конфигурации запуска/отладки выберите только что созданное кросс-компилированное приложение с профилем сборки CrossDebug/CrossRelease.

      Нажмите кнопку молотка, чтобы выполнить кросс-компиляцию, воспроизведение, чтобы скопировать и запустить на удаленном хосте Motorcortex, и кнопку ошибки, чтобы начать сеанс удаленной отладки.


      Обратите внимание, если CMake CrossDebug/CrossRelease не работает, удалите «Удаленное приложение Motorcortex» из конфигураций запуска/отладки и повторите попытку

      Настройка CLion для работы с нашим программным обеспечением в действительности аналогична использованию CLion с проектом Makefile. По умолчанию CLion использует CMake, чтобы выяснить, какие файлы являются частью программы или библиотеки. Проблема для нашего программного обеспечения и любого программного обеспечения, не использующего CMake, заключается в том, что большинство преимуществ CLion (или любой IDE) зависят от знания всех файлов, которые используются для создания программы или библиотеки.

      На этой странице показано, как настроить CLion с программным обеспечением, использующим make и/или autotools.

      Содержание

      1 Весь сервер или только его части

      Во-первых, вам нужно решить, хотите ли вы работать со всем кодом C++ как с одним «проектом» или использовать отдельный проект для каждой из «hyrax-зависимостей», «libdap4» и «bes». На практике вы выбираете один путь, а затем переключаетесь на него, не заплатив слишком большого штрафа.

      Для остальной части руководства я предполагаю, что вы сделали следующее:

      2 Откройте каталог, содержащий код

      Новый диалог проекта

      При запуске CLion вы увидите диалоговое окно

      Выберите каталоги для сканирования

      Нажмите «Новый проект CMake из источников», и вы увидите следующее

      Файл CMakeLists

      Используйте это диалоговое окно, чтобы выбрать, какие каталоги сканировать. CLion просканирует выбранные каталоги. поиск кода для компиляции, а также в нижней панели для включения заголовков. В последнем случае закодируйте все каталоги заголовками, которые вы хотите найти. Для Hyrax это означает каталоги $prefix/build/deps/include и $prefix/build/include. Загрузка конечного результата займет несколько секунд, и в нижней части экрана будут отображаться сообщения о различных операциях сканирования и индексирования. После завершения этого процесса вы должны получить довольно полный файл CMakeLists.txt (насколько мне известно, его нельзя использовать для сборки кода без некоторых дополнений, но он служит базой данных для CLion. Он может быть, нам нужно добавить несколько дополнительных каталогов для таких вещей, как заголовки libxml2 и curl). Независимо от моих комментариев в скобках, вы должны увидеть что-то вроде этого:

      Пройдитесь по панели исходного кода и откройте какой-нибудь код.Это должно выглядеть "хорошо" в том смысле, что не должно быть много флажков ложных срабатываний.

      2.1 Второй способ создания базы данных

      Файл CMakeLists — это одна из двух «баз данных», которые вы можете создать для CLion для описания содержимого проекта C++. Другая — это compiledb файл json. Это построено из инструмента Python под названием compiledb. Но есть хитрость. В простейшем случае этот инструмент используется следующим образом: compiledb -n make. Но только это, вероятно, не сработает. Если каталог не очищен (т. е. сделать чистым), make ничего не соберет, а compileb ничего не поместит в базу данных. Во-вторых, аргументы командной строки для make кажутся сбивающими с толку compileb. Тем не менее, будет работать передача вывода make в compileb, например: make -nwk all | скомпилированоb.

      Я не уверен, что это полезно и достаточно ли редактирования файла CMakeLists.txt для наших нужд.

      3 Создание кода

      Существует несколько способов запуска сборок из CLion. Вот обзор:

      1. Используйте окно терминала. Это просто обычное окно терминала, поэтому вам нужно исходный код spath.sh в корне проекта hyrax. Это самый простой способ запуска сборок, но он не закладывает основу для отладки.
      2. Использование плагина Makefile — это еще один способ, но результат не дает простого способа найти предупреждения или ошибки компиляции (то есть щелкнуть ошибку и перейти к исходному файлу/строке, не для поиска).
      3. Использование приложения Custom Build Application похоже на подключаемый модуль Makefile, но настраивает отладку IDE и предоставляет достойный способ ссылки на предупреждения/ошибки.

      3.1 Окно терминала

      Вы знаете, как запустить make в терминале. Вот так выглядит терминал. Это показывает, что для hyrax вам необходимо получить файл spath.sh.

      Окно терминала

      3.2 Настройка приложений пользовательской сборки

      Для нашего проекта Hyrax вы можете облегчить себе работу, если сначала сделаете один маленький, но несколько странный шаг. Перейдите в каталог hyrax-dependencies/src/bison-xy и повторно запустите configure, используя значения по умолчанию (т. е. просто запустите ./configure) . Затем соберите и установите bison. Это установит исполняемый файл bison в /usr/local/bin, что технически «загрязняет» вашу среду сборки, но означает, что большинство сложных вещей, которые вам нужно сделать с переменной среды PATH в следующем разделе стать спорным.

      Это сложная задача, потому что здесь нужно выполнить два шага: первый — настроить Пользовательскую цель сборки, а второй — настроить Пользовательское приложение сборки. Цель необходима для того, чтобы приложение было действительным, и для таких вещей, как BES, цель также работает для создания кода. Но для libdap Target будет собирать код только в том случае, если bison 3.x установлен в каталоге по вашему PATH по умолчанию. Если нет, то описанная здесь цель не будет работать (но по-прежнему требуется в качестве заполнителя). Общее правило заключается в том, что Target работает только со всеми инструментами, необходимыми для сборки, которые находятся в PATH, который используется, когда ОС запускает CLion.

      Сжатая версия: откройте диалоговое окно Редактировать конфигурации в меню Выполнить, а затем используйте его, чтобы создать приложение пользовательской сборки с Пользовательская цель сборки. После того, как вы установили цель, отмените выбор элемента Build в нижней части диалогового окна приложения, а затем настройте двоичный файл make на построить код. При необходимости задайте PATH (например, для libdap убедитесь, что в PATH включен каталог ./build/deps/bin).

      Запутались? Следуйте приведенным ниже развернутым инструкциям:

      Откройте диалоговое окно Edit Configurations. с помощью меню Run (есть также возможность открыть его из пункта Run. меню Run). ).

      Откройте диалоговое окно «Пользовательские цели сборки», щелкнув синюю псевдоссылку в правом верхнем углу диалогового окна. Обратите внимание, что вы сейчас смотрите на диалоговое окно Preferences. Посмотрите на правый край диалогового окна на наличие кнопок с многоточием внутри них. Возможно, вам придется немного изучить этот диалог.

      Открыть диалоговое окно CBT

      Для каждого из Build и Clean нажмите кнопку с многоточием, и вы увидите другое диалоговое окно. Внизу этого высокого узкого окна нажмите на значок плюса, чтобы определить новую цель.

      Пользовательские цели сборки

      Чтобы создать библиотеку или программу C++ с помощью файла Makefile, задайте для параметра Program значение /usr/bin/make. Обратите внимание, что для этого нет возможности изменить PATH, поэтому, если сборка зависит от инструмента (например, bison), которого нет в PATH, она завершится ошибкой. С BES все в порядке, но для libdap нужен bison 3.x. Вы можете поместить это в /usr/local/bin. Возможно, вам придется возиться с вещами в OSX, чтобы получить «ПУТЬ по умолчанию» (ПУТЬ, используемый вещами, запускаемыми Finder). Независимо от того, работает он вообще или нет, вам нужно определить эти . Цели. NB: вы можете передать PATH в качестве аргумента командной строки — я этого не пробовал.

      Создать/отредактировать цель сборки

      Теперь, когда вы заполнили диалоговое окно, закройте его и используйте меню слева от кнопки с многоточием, чтобы выбрать то, что вы только что определили. Сделайте одну цель для сделать все и одну для сделать чистой.

      Закройте диалоговое окно(я).

      Заполните . Приложения. Здесь вы можете разместить практически все, что захотите. Для стандартных команд сборки (all, clean, check, . ) настройте параметры по своему усмотрению. Для OSX исполняемый файл make находится в папке /Applications/Xcode/Contents/Developer/usr/bin/. Обратите внимание, что для тестов необходимо добавить TESTSUITEFLAGS=-j8 к аргументам программы будут запущены тесты autotest параллельно.

      Приложения пользовательской сборки

      Вот снова диалоговое окно Custom Build Applications:

      Обратите внимание, как взломан PATH. Для hyrax вам нужно будет поставить оба . /сборка/bin и . /build/deps/bin в PATH (хотя в примере это не так). Также обратите внимание, что в большом диалоговом окне внизу нет пункта Перед запуском: активировать окно инструмента. По умолчанию это будет Build, но для libdap это не удастся. Итак, выберите это и удалите со знаком минус.

      Clion ищет входные файлы и записывает выходные файлы в папку Debug. Если вы поместите туда свои входные файлы, он их увидит.

      Решение 2:

      Я предполагаю, что в качестве рабочего каталога указывается путь к исполняемому файлу, а не ваш файл CMakeLists.txt.

      Чтобы исправить это, ЛИБО:

      1. поместите .txt рядом с исполняемым файлом
      2. Введите полный путь к файлу .txt, как описано в ответе ti7.

      Решение 3:

      если inputFile.is_open() всегда возвращает false , inputFile.open("twoday.txt"); неправильно открывает файл, предположительно потому, что не может найти "twoday.txt"

      Попробуйте указать явный путь, например "c:/path/twoday.txt" или "/path/twoday.txt", если вы используете Linux. Вместо этого вы также можете попробовать записать файл, чтобы посмотреть, где он появится, или сделать что-то более экзотическое, чтобы вернуть текущий путь.

      Решение 4:

      Другие ответы указывают на проблему, которая на самом деле не имеет ничего общего с CLion. Когда любой исполняемый файл запускается, он имеет текущий рабочий каталог. По умолчанию это каталог, в котором находится исполняемый файл. Если файл, который вы хотите прочитать, находится где-то еще, вы должны сделать одну из трех вещей:

      • Используйте для файла полное имя пути. Немного неудобно, если вы вводите имя файла во время выполнения.
      • Скопируйте файл данных в домашнюю папку исполняемого файла. Но тогда вам нужно будет скопировать его снова, когда вы будете создавать выпускную сборку, а не отладочную сборку.
      • Используйте очень приятный пользовательский интерфейс CLion, чтобы установить для текущего рабочего каталога исполняемого файла при запуске другое значение, например ваш проект или папку данных.

      Решение 5:

      Я узнал, как настроить CMake для сборки в каталоге вашего проекта в CLion.

      1. Перейти к файлу:Настройки
      2. Теперь перейдите к разделу сборки, выполнения, развертывания.
      3. Там в сборке вы можете указать путь сборки относительно вашего проекта

      Я просто установил для себя значение ".\build", и теперь он всегда встраивается в мой проект, включая созданный вами файл.

      CLion — это кроссплатформенная интегрированная среда разработки C/C++ для Linux, OS X и Windows. CLion включает в себя такие функции, как интеллектуальный редактор, генерация кода, контроль качества кода, автоматизированный рефакторинг, анализ кода на лету, менеджер проектов, интегрированные системы контроля версий и отладчик.

      Для получения более подробной информации см. страницу документации CLion.

      ../../_images/ ide-platformio-clion.jpg

      Установка¶

      Установите PlatformIO Core (CLI).См. руководство по установке

      Скачать и установить CLion IDE

      Установите официальный подключаемый модуль PlatformIO для CLion. Откройте окно «Configure > Plugins» и перейдите на вкладку «Marketplace». Найдите PlatformIO и нажмите кнопку «Установить».

      Перезапустите CLion IDE.

      Мы также рекомендуем установить подключаемый модуль Ini, который обеспечивает подсветку синтаксиса, форматирование, свертывание кода и структуру просмотра для «platformio.ini» (файл конфигурации проекта).

      Известные проблемы¶

      Конфигурация проекта и CMake¶

      PlatformIO не зависит от «CMake» и использует собственную многоплатформенную систему сборки. Конфигурация проекта, такая как флаги сборки, зависимости библиотек и т. д., должна быть объявлена ​​в «platformio.ini» (файл конфигурации проекта).

      Обновите конфигурацию CLion: «Инструменты > PlatformIO > Повторная инициализация»

      CLion не загружает среды сборки проекта из «platformio.ini»¶

      Это известная проблема CLion CPP-19478: CLion не обрабатывает «CMAKE_CONFIGURATION_TYPES» из CMakeLists.txt. Временным решением является ручная настройка профилей проектов в CLion.

      Откройте настройки CLion и перейдите к «Сборка, выполнение, развертывание > CMake». Нажмите кнопку «+» и профили проектов на базе PlatformIO:

      ../. ./_images/ide-platformio-clion-configure-profiles.jpg

      Файлы Arduino .ino не поддерживаются¶

      CLion использует инструмент CMake для завершения кода и анализа кода. В результате он не поддерживает файлы Arduino ( *.ino и .pde ), поскольку они не являются допустимыми исходными файлами на основе C/C++:

      Объявления функций опущены.

      CLion с ESP-IDF¶

      Начиная с версии 4.0, ESP-IDF использует систему сборки на основе CMake. Чтобы обеспечить более плавную интеграцию, PlatformIO использует файловый API CMake для извлечения конфигураций сборки. Из-за этого подхода возникает конфликт между CMakeLists.txt, используемым ESP-IDF, и CMakeLists.txt, который PlatformIO генерирует для CLion. В настоящее время мы работаем над лучшей интеграцией с CLion без этого промежуточного файла CMakeLists.txt , но для этой функции нет ожидаемого времени прибытия.

      Быстрый старт¶

      Это руководство знакомит вас с основами рабочего процесса PlatformIO для CLion и показывает процесс создания простого примера «Blink». После окончания у вас будет общее представление о том, как работать с проектами в CLion IDE.

      Настройка проекта¶

      Откройте мастер «Новый проект», выберите плату и фреймворк и создайте новый проект PlatformIO. Пожалуйста, ИСПОЛЬЗУЙТЕ ТОЛЬКО латинские символы (a-z) в имени проекта, чтобы избежать дальнейших проблем с компиляцией проекта. Числа и некоторые символы разрешены в зависимости от файловой системы:

      Переименуйте файл main.c в папке src в main.cpp (щелкните правой кнопкой мыши файл main.c , Refactor > Rename…). Вставьте следующее содержимое:

      Приведенный ниже код работает только в паре с платами на базе Arduino. Пожалуйста, перейдите в репозиторий примеров проектов PlatformIO для других предварительно настроенных проектов.

      ../. ./_images/ide-platformio-clion-blink-project.jpg

      Создать и загрузить¶

      Откройте мастер настройки проекта и добавьте конфигурации загрузки и отладки PlatformIO (вы можете добавить остальные конфигурации, если они вам нужны):

      Удалите предварительную задачу («Сборка») из конфигураций загрузки и отладки PlatformIO, чтобы избежать двойного построения проекта. Вы должны увидеть «Нет задач для запуска перед запуском».

      Выберите конфигурацию загрузки PlatformIO и используйте кнопку «Сборка» для компиляции проекта или кнопку «Выполнить» для загрузки прошивки:

      Параметры конфигурации¶

      Монитор устройства/последовательного порта¶

      Пожалуйста, откройте терминал CLion и используйте диспетчер устройств CLI. Вы также можете настроить монитор устройства для каждого проекта, используя параметры монитора.

      Обратите внимание, что вам необходимо вручную закрыть/остановить монитор устройства перед загрузкой прошивки.

      Отладка¶

      «PlatformIO для CLion» поддерживает отладку, что позволяет отлаживать приложение одним щелчком мыши без дополнительных действий. Выберите конфигурацию отладки PlatformIO и нажмите кнопку «Отладка»:

      ../. ./_images/ide-platformio-clion-debug-project.jpg

      Периферийные регистры¶

      Перейдите на вкладку «Периферийные устройства» в представлении «Отладка», нажмите значок «Настроить» и выберите регистры для мониторинга. Закройте окно конфигурации.

      Временное решение — открыть файл CMakeListsPrivate.txt из корня проекта PlatformIO и запомнить файл SVD, объявленный в переменной CLION_SVD_FILE_PATH «CMake». Теперь нажмите кнопку «+» в мастере периферийных устройств и выберите файл SVD, указанный в CLION_SVD_FILE_PATH .

      ../. ./_images/ide-platformio-clion-debug-peripherals.jpg

      Главная страница платформы IO¶

      В настоящее время PlatformIO Home не интегрирована в «PlatformIO для CLion». См. соответствующий запрос функции CLion: CPP-19493 Integrate PlatformIO Home.

      Тем не менее, вы можете запустить его вручную и открыть в браузере. Обратите внимание, что некоторые функции не работают, например, открытие проекта. Откройте терминал CLion и выполните команду pio home:

      ../. ./_images/ide-platformio-clion-piohome-terminal.jpg

      Дальше для чтения:

      Учебники и примеры (пошаговые руководства с отладкой и модульным тестированием)

      Читайте также: