使用CLion的本地makefile而不是CMake

有没有办法configurationCLion使用本地makefile来编译代码,而不是CMake? 我似乎无法find从构build选项做到这一点。

尽pipe目前只支持CMake,但您可以指示CMake使用您的自定义Makefile调用make 。 编辑您的CMakeLists.txt添加这两个命令之一:

  • add_custom_target
  • add_custom_command

当您告诉CLion运行您的程序时,它会尝试在PROJECT_BINARY_DIR指向的目录中find与目标名称相同的可执行文件。 所以只要你的产品生成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)/$@ ... g++ mytest.cpp -o $(CLION_EXE_DIR)/mytest 

就是这样,您可能还需要更改程序的工作目录,以便从目录中运行make时执行它。 对于这个编辑: Run -> Edit Configurations ... -> mytest -> Working directory

虽然这是最受欢迎的function请求之一 ,但是Victor Kropp提供了一个可用的插件 ,它增加了对makefile的支持:

Makefile支持IntelliJ IDEA的插件

安装

您可以直接从官方存储库安装:

设置>插件>searchmakefile >在存储库中search>安装>重新启动

使用

至less有三种不同的运行方式:

  1. 右键单击一个生成文件,然后select运行
  2. 在编辑器中打开makefile将插入符号放在一个目标上(任意位置),点击alt + enter ,select目标
  3. 在目标上点击ctrl / cmd + shift + F10 (虽然这个在Mac上不适用于我)。

它打开一个名为Run的窗格 目标与输出。

目前,只有CMake得到CLion的支持。 其他构build系统将在未来添加,但目前,您只能使用CMake。

一个导入工具已经被实现来帮助你使用CMake。

编辑:

资料来源: http : //blog.jetbrains.com/clion/2014/09/clion-answers-frequently-asked-questions/

我不是很熟悉CMake,不能直接使用Mondkin的解决scheme。

这是我在我的CMakeLists.txt中使用最新版本的CLion(1.2.4)和Windows上的MinGW(我想你只需要replace所有:g ++ mytest.cpp -o bin / mytest通过make if你没有使用相同的设置):

 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 

我能够构build可执行文件和日志窗口中的错误是可点击的。

IDE中的提示相当有限,与纯CMake项目相比,这是一个很大的限制。