使用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有三种不同的运行方式:
- 右键单击一个生成文件,然后select运行
- 在编辑器中打开makefile将插入符号放在一个目标上(任意位置),点击alt + enter ,select目标
- 在目标上点击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项目相比,这是一个很大的限制。