如何让CLion运行安装目标

时间:2015-11-18 19:30:40

标签: cmake clion

我正在使用已经使用CMake的现有项目评估CLion 1.2.1。该项目由一些库模块和一个可执行文件组成。

我有一个安装目标,用于在bin文件夹中一起收集可执行文件和配置文件以进行调试:

...
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_BINARY_DIR}/bin/)
install(FILES config.xml DESTINATION ${CMAKE_BINARY_DIR}/bin/)

在命令行上构建时,我只需运行:

make install

按预期构建二进制文件,如果成功则运行上述安装命令。

我的问题是我无法让CLion运行'install'目标。我希望能够创建一个新的运行/调试配置,但Target:下拉列表仅包含使用 add_executable() add_library()添加的目标。

我还尝试在“设置”对话框的“构建”选项中添加“安装”。然而,现在每个目标都会安装,包括'clean',这是不正确的。

2 个答案:

答案 0 :(得分:21)

更新:自2018.1 EAP, build 181.3741.16起,如果您的项目定义了安装目标,则CLION支持运行cmake install

原始答案:

我认为CLion尚未实现此功能。但是,您可以通过添加将执行make install命令的CMake "自定义目标" (使用add_custom_target())来解决此限制:

add_custom_target(install_${PROJECT_NAME}
                  $(MAKE) install
                  DEPENDS ${PROJECT_NAME}
                  COMMENT "Installing ${PROJECT_NAME}")

现在,你所要做的就是" build"来自"目标的install_YOUR_PROJECT_NAME目标"在CLion的菜单。

<强>更新

更多跨平台技术可能如下:

add_custom_target(install_${PROJECT_NAME}
                  "${CMAKE_COMMAND}" --build "${CMAKE_BINARY_DIR}" --target install
                  DEPENDS ${PROJECT_NAME}
                  COMMENT "Installing ${PROJECT_NAME}")

答案 1 :(得分:1)

@maddouri的评论已经解决了您的问题。另外,在设置->构建,执行,部署-> CMake 下,您还可以将Debug或Release构建类型的 Build Option 设置为 -j 2安装。使用此设置,每当CLion构建代码时,它也将安装您的目标!