clion 是通用 c/c++ ide,不内置 qt/stm32 等专用模板,仅识别 cmake、compile_commands.json 等构建描述;所谓“模板”实为第三方骨架、自维护工程结构或插件联动生成结果。

CLion 本身不提供“项目模板”选择界面,新建项目时只有空项目、从源码导入、或通过外部构建系统(如 CMake、Makefile)引导 —— 所谓“Qt 模板”“STM32 模板”都是靠手动配置或第三方脚手架实现的。
为什么新建项目里看不到 Qt/STM32 等模板
CLion 是通用 C/C++ IDE,不像 Qt Creator 或 Keil 那样内置特定平台向导。它默认只识别构建系统(CMakeLists.txt、compile_commands.json 等),不预装 Qt、STM32 或嵌入式专用向导。
你看到的“Qt 模板”“STM32F407 模板”,实际是以下三类来源之一:
- 第三方 GitHub/Gitee 项目(如
template_qtclion),需git clone后用 CLion 打开目录 - 你自己维护的 CMake 工程骨架(含预设的
CMakeLists.txt、cmake/子目录、工具链配置) - 借助插件(如
STM32CubeMX Support)联动生成代码,但 CLion 仍只作为编辑器加载结果
如何让 CLion “识别”并正确加载 Qt 项目
关键不是选模板,而是让 CMake 正确找到 Qt 并生成可解析的构建描述。
- 确保
CMakeLists.txt中设置了CMAKE_PREFIX_PATH,路径必须指向Qt6/mingw_64(或Qt5/5.15.2/mingw81_64),不能是Tools/下的 MinGW 安装目录 - 调用
find_package(Qt6 COMPONENTS Widgets REQUIRED)(Qt6)或find_package(Qt5Widgets REQUIRED)(Qt5),否则 CLion 无法索引 Qt 类型 - 在 CLion 的
Settings → Build → CMake中,Toolchain 必须选中对应 MinGW(不是 MSVC),且环境变量PATH要包含该 MinGW 的bin/ - 如果报错
fatal error: QApplication: No such file or directory,大概率是CMAKE_PREFIX_PATH路径错、Qt 版本号不匹配(set(QTVersion 6)与实际不一致),或find_package缺少Widgets组件
如何复用 STM32 标准库/LL/HAL 工程结构
没有“一键创建 STM32 项目”按钮,但可以固化流程:
- 用 STM32CubeMX 生成初始化代码后,**不要直接用 CubeMX 打开**,而是保存到一个干净目录,再用 CLion 打开该目录 —— CLion 会自动检测
CMakeLists.txt(若你已配好)或提示生成 - 推荐使用
arm-gcc.cmake和stm32f4.cmake等自定义 toolchain 文件,在CMakeLists.txt中通过set(CMAKE_TOOLCHAIN_FILE ...)加载,避免每次手动填交叉编译器路径 - 注意
startup_stm32f407xx.s和system_stm32f4xx.c必须加入add_executable(...)的源文件列表,否则链接失败;CLion 不会自动识别启动文件 - OpenOCD 调试配置需手动添加:Run → Edit Configurations → Add New Configuration → Embedded GDB Server,指定
openocd路径和stlink-v2.cfg等配置文件
真正决定项目是否“可用”的,从来不是模板名字,而是 CMakeLists.txt 是否能跑通、CLion 是否能解析出符号、调试器能否连上芯片 —— 这些环节任何一个出问题,所谓“模板”就只是个空壳。别迷信“一键生成”,盯住 CMake 输出日志和 CLion 右下角的“CMake Sync”状态更实在。











