如何在CLion中运行、调试Makefile构建的C++项目
CLion适配现有Makefile C++项目配置指南
你可以选两种方案,不用强制新建项目拷贝文件,也能实现和PyCharm/IntelliJ一致的运行、调试体验。
方案1:保留原有Makefile构建逻辑,零改动适配
- 打开CLion,直接选择
Open,选中存放Makefile的项目根目录,等待CLion完成文件索引(2021及之后版本原生支持Makefile项目,无需安装额外插件) - 点击右上角运行配置下拉栏,选择
Edit Configurations - 点击配置窗口左上角的
+号,选择Makefile Application类型,按你终端执行的逻辑填写对应配置项即可:- Name:自定义配置名称,方便识别即可
- Target:填写你平时终端执行
make时指定的目标名,默认全量编译可留空 - Executable:选择make编译完成后生成的可执行文件路径,和你终端运行时找的文件路径保持一致
- Working directory:选择项目根目录,和你终端执行make、运行程序的工作路径一致
- 调试前确认Makefile中的编译选项添加了
-g参数(生成调试符号,否则断点无法命中),配置完成后直接点击运行/调试按钮即可,交互逻辑和你熟悉的JetBrains系产品完全一致。
方案2:原地转换为CMake构建,无需新建项目拷贝文件
不需要新建空项目再迁移文件,直接在现有项目根目录操作即可:
- 在项目根目录新建名为
CMakeLists.txt的配置文件,原有代码、Makefile都不需要改动,两者可以共存 - 参考以下通用模板填写配置,参数和你原有Makefile的编译规则对齐即可:
# 指定兼容的最低CMake版本,填写3.10及以上即可,CLion会自动适配 cmake_minimum_required(VERSION 3.10) # 替换为你的项目名称 project(your_cpp_project) # 指定项目使用的C++标准,按你实际代码需求选11/14/17/20即可 set(CMAKE_CXX_STANDARD 17) # 配置编译选项,保留你原有Makefile里的编译flag即可,-g用于生成调试符号 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wall -Wextra") # 配置最终生成的可执行文件:第一个参数是输出的可执行文件名,后面依次列所有需要编译的.cpp源文件路径 # 如果源文件都存放在src目录,可以写src/*.cpp匹配所有cpp文件 add_executable(your_app_name main.cpp src/util.cpp src/core.cpp ) # 如果你项目有自定义头文件目录、需要链接第三方库,补全以下两行即可 # include_directories(./include) # target_link_libraries(your_app_name pthread curl)
- 写完配置文件后,CLion右上角会弹出加载CMake项目的提示,点击
Load CMake Project等待索引、配置完成即可直接使用运行、调试功能。
注意:如果CMake配置完成后编译报错找不到头文件、找不到链接库,直接对照你原有Makefile里的头文件搜索路径、链接库列表,把对应内容补到CMakeLists.txt的对应配置项里即可,不需要修改任何业务代码。
内容的提问来源于stack exchange,提问作者appeldaniel
相关产品推荐
相关产品推荐

