Использование локального make файла для CLion вместо CMake

Есть ли способ настроить CLion для использования локального make файла для компиляции кода, а не для CMake? Кажется, я не могу найти способ сделать это из вариантов сборки.

Ответ 1

Несмотря на то, что в настоящее время поддерживается только CMake, вы можете указать CMake называть make своим пользовательским Makefile. Измените команду CMakeLists.txt, добавив одну из этих двух команд:

Когда вы сообщите CLion, чтобы запустить вашу программу, он попытается найти исполняемый файл с тем же именем цели в каталоге, указанном PROJECT_BINARY_DIR. Пока ваш make генерирует файл, в котором ожидает CLion, проблем не будет.

Вот рабочий пример:

Сообщите CLion передать свой $(PROJECT_BINARY_DIR) значение make

Это пример CMakeLists.txt:

cmake_minimum_required(VERSION 2.8.4)
project(mytest)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

add_custom_target(mytest COMMAND make -C ${mytest_SOURCE_DIR}
                         CLION_EXE_DIR=${PROJECT_BINARY_DIR})

Скажите make, чтобы сгенерировать исполняемый файл в каталоге CLion's

Это образец Makefile:

all:
    echo Compiling $(CLION_EXE_DIR)/[email protected] ...
    g++ mytest.cpp -o $(CLION_EXE_DIR)/mytest

Вот и все, вы также можете изменить рабочий каталог своей программы, чтобы он выполнялся так же, как и при запуске make изнутри вашего каталога. Для этого редактирования: Run -> Edit Configurations ... -> mytest -> Working directory

Ответ 2

Хотя это один из наиболее признанных запросов функций, есть plugin, Victor Kropp, который добавляет поддержку make файлов:

Плагин поддержки Makefile для IntelliJ IDEA

Установка

Вы можете установить непосредственно из официального репозитория:

Настройки > Плагины > поиск makefile > Поиск в репозиториях > Установкa > Перезагрузка

Использование

Существует не менее трех различных способов запуска:

  • Щелкните правой кнопкой мыши файл makefile и выберите Выполнить
  • Открыв make файл в редакторе, установите курсор над одной целью (в любом месте строки), нажмите alt + enter, выберите сделать цель
  • Хит ctrl/cmd + shift + F10 в целевой (хотя этот не работал у меня на Mac).

Откроется панель с именем Запустить heckert_gnu.transp.small.png target.

Ответ 3

В настоящее время CLion поддерживается только CMake. Другие системы сборки будут добавлены в будущем, но в настоящее время вы можете использовать только CMake.

Инструмент импортера был реализован, чтобы помочь вам использовать CMake.

Edit:

Источник: http://blog.jetbrains.com/clion/2014/09/clion-answers-frequently-asked-questions/

Ответ 4

Я не очень хорошо знаком с CMake и не мог напрямую использовать решение Mondkin.

Вот что я нашел в своем CMakeLists.txt, используя последнюю версию CLion (1.2.4) и MinGW в Windows (думаю, вам просто нужно будет заменить все:   g++ mytest.cpp -o bin/mytest, если вы не используете одну и ту же настройку):

cmake_minimum_required(VERSION 3.3)
project(mytest)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

add_custom_target(mytest ALL COMMAND mingw32-make WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})

И пользовательский Makefile подобен этому (он находится в корне моего проекта и генерирует исполняемый файл в каталоге bin):

all:
    g++ mytest.cpp -o bin/mytest

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

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