CLion配置完成后如何编译代码

夏杰吖_7142

夏杰吖_7142

2026-09-13

423人浏览

原创

clion点击“构建”菜单编译项目需先正确配置cmake和工具链;若显示“cmake is not configured”,说明cmakelists.txt未被识别,应确认其位于项目根目录;“toolchain not found”则需在settings→build→toolchains中手动指定编译器路径;构建卡在“running cmake”阶段多因cmakelists.txt含未定义变量或路径含中文/空格。

clion配置完成后如何编译代码

点击“构建”菜单直接编译整个项目

CLion 默认使用 CMake 构建系统,配置好工具链和 CMake 选项后,“构建”菜单里的命令才真正可用。点开顶部菜单 BuildBuild Project(或快捷键 Ctrl+F9),CLion 就会调用 CMake 执行构建流程:生成构建目录、运行 cmake 配置、再执行 cmake --build 编译所有目标。

常见错误现象:

  • CMake is not configured:说明 CMakeLists.txt 没被识别,检查是否在打开项目时选了正确的 src/CMakeLists.txt,而不是父目录或其他文件
  • Toolchain not found:即使 VS2022 或 MinGW 已安装,CLion 也可能没自动检测到,需手动在 Settings → Build → Toolchains 中指定编译器路径
  • 构建卡在 “Running CMake” 阶段:大概率是 CMakeLists.txt 里引用了未定义的变量(如 Qt5Concurrent_DIR),或路径含中文/空格导致解析失败

只编译单个 C++ 文件(非 CMake 目标)

CLion 原生不支持“右键单个 .cpp 文件 → 编译”,但可通过 External Tools + 自定义运行配置实现类似效果。适用于快速验证算法片段、刷题或调试裸函数。

实操建议:

  • 先在 Settings → Tools → External Tools 添加一个工具:Program 填你本地 g++.execl.exe 路径;Arguments-g -o $FileNameWithoutExtension$.exe $FilePath$Working directory$ProjectFileDir$
  • 再新建一个 Run Configuration,类型选 Custom Build ApplicationTarget 选刚才配的 External Tool,Executable 指向生成的 .exe
  • 这样每次切换文件,点绿色三角就能一键编译+运行,无需改 CMakeLists.txt

编译后找不到可执行文件?检查构建目录结构

CLion 的构建输出默认放在 cmake-build-xxx 子目录下(如 cmake-build-debugcmake-build-RelWithDebInfo),不是项目根目录。AFSIM 等大型项目还会额外要求把 wsf_install/bin 下的 DLL 拷进该目录才能运行——否则启动就报 MSVCP140.dll 丢失无法定位程序输入点

C++
C++

"空空如也"

下载

容易踩的坑:

  • 误以为“编译成功”=“能双击运行”,其实只是生成了 .obj.lib,没生成最终 .exe —— 检查 CMakeLists.txt 是否有 add_executable(...) 且名字匹配
  • RelWithDebInfo 模式下某些插件子项目(如 wsf_oms_uci)的 CMakeLists.txt 缺少对应 build type 的条件分支,需手动补上 elseif(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
  • 交叉编译(如 ARM)时,可执行文件生成在远程主机上,必须用 scp 下载回来,且不能直接双击运行,得通过 GDB server 启动调试

编译慢?关掉无关的 CMake 选项

AFSIM 这类框架默认启用大量模块(Qt、Python、OMS、UCI),全量编译动辄半小时以上。实际开发中往往只改其中一两个组件,没必要每次都全编。

优化方法:

  • 在 CMake 配置界面(Settings → Build → CMake)的 CMake options 栏加参数,例如:-DBUILD_WSF_PLUGINS=OFF -DBUILD_PYTHON_BINDINGS=OFF
  • 禁用 Qt 相关项前确认你没用到 GUI 功能,否则 wizard 程序会启动失败
  • 若只调试 wizard 主程序,可单独构建它:Build → Build Selected Target → wizard,跳过其他静态库

构建目录一旦修改 CMake 选项就必须重新配置(点击右上角锤子图标旁的刷新按钮),否则旧缓存会导致开关无效。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
AionClaw AI智能体与电脑自动化任务执行功能使用教程
AionClaw AI智能体与电脑自动化任务执行功能使用教程

AionClaw专题整理AI智能体与电脑自动化相关功能使用教程,涵盖安装部署、AI任务执行、Skills技能、文件处理、浏览器控制、电脑操作、持久记忆、聊天工具连接以及办公、编程和内容创作等功能,帮助用户快速掌握AionClaw的实际使用方法。

2026.09.20

0

15

AI视频生成软件推荐
AI视频生成软件推荐

本专题汇总了当前主流的AI视频生成软件推荐与排行榜单,涵盖seko、AniShort、剧云、Lovart、LiblibAI及立刻mv等热门工具。同时整理了各软件在文生视频、图生视频、时长限制、画质表现及免费额度等方面的差异对比,助您快速选对适合创作需求的AI视频生成工具。

2026.09.16

160

9

ai生成视频的工具免费版合集
ai生成视频的工具免费版合集

本专题汇总了当前免费AI生成视频工具的排行榜与推荐清单,涵盖seko、讯飞智作、AniShort及剧云、Lovart等多模型集成平台。同时整理了各工具的免费额度、输出时长、水印政策及适用场景差异,助您快速选择合适工具开启AI视频创作。

2026.09.16

60

10

Pandas时间序列分析与可视化报表
Pandas时间序列分析与可视化报表

本专题整理Pandas日期转换、时间索引、重采样、滚动窗口、时区处理、plot绘图、Styler表格样式和报表输出方法。

2026.09.16

80

23

Pandas数据筛选索引与清洗处理
Pandas数据筛选索引与清洗处理

本专题整理Pandas中的loc、iloc、条件筛选、query查询、缺失值处理、重复值删除、类型转换和字符串列清洗方法。

2026.09.16

40

25

Pandas数据读取导入与文件导出处理
Pandas数据读取导入与文件导出处理

本专题整理Pandas读取CSV、Excel、JSON、SQL、Parquet等文件的方法,以及to_csv、to_excel、to_sql和to_parquet等常用数据导出流程。

2026.09.16

40

27

GDB怎么设置断点
GDB怎么设置断点

本专题介绍GDB按照函数名、源代码行号和文件位置设置断点的方法,详细说明run、continue、next、step等命令的配合使用,帮助定位程序崩溃、逻辑异常及代码未按预期执行的问题。

2026.09.11

360

28

GDB怎么查看变量值
GDB怎么查看变量值

本专题介绍GDB调试过程中查看变量值的具体方法,涵盖局部变量、函数参数、数组、结构体和指针内容查询,同时整理变量持续显示、格式化输出及无法读取变量时的排查思路。

2026.09.11

120

22

GDB C++程序怎么调试
GDB C++程序怎么调试

本专题围绕GDB调试C++程序的实际过程,详细说明程序编译、调试器启动、命令行参数传入、断点命中和程序继续运行等步骤,并介绍条件断点、临时断点和观察点的设置方法,方便开发者跟踪复杂代码的执行状态。

2026.09.11

140

20

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程