[STM32F0] 每次重新生成代码时都要重新手动将项目设置设置为 C++

[复制链接]
1130|13
 楼主| HomeKit 发表于 2025-3-28 21:24 | 显示全部楼层 |阅读模式
在 STM32Cube IDE 中做STM32F0项目,每次重新生成代码时都要重新手动将项目设置设置为 C++。这有点烦人



5579767e6a2e046ca2.png

梅花香自123 发表于 2025-3-31 22:45 | 显示全部楼层
修改 .project 和 .cproject 文件来保持 C++ 设置。
风凉 发表于 2025-4-23 01:23 | 显示全部楼层
STM32CubeIDE 中为 STM32F0 项目生成代码时,每次重新生成后项目设置从 C++ 被重置为 C,通常是由于 STM32CubeMX 代码生成器的默认配置 或 项目模板问题 导致的

失物招領 发表于 2025-4-24 02:32 | 显示全部楼层
CubeMX 代码生成器 默认以 C 语言 生成初始化代码(如 .ioc 文件配置),因此在重新生成代码时,会覆盖 IDE 的项目设置

她已醉 发表于 2025-4-24 03:25 | 显示全部楼层
STM32CubeIDE 的项目类型 由 .project .cproject 文件定义,但 CubeMX 生成时不会保留 C++ 配置

将爱藏于深海 发表于 2025-4-24 04:37 | 显示全部楼层
如果通过 CubeMX 直接生成 CubeIDE 项目(而非手动转换为 C++),生成的模板可能未包含 C++ 支持

捧一束彼岸花 发表于 2025-4-24 05:38 | 显示全部楼层
CubeMX 中强制指定生成 C++ 项目,STM32CubeIDE(确保勾选 Generate Under Root)。在 Code Generator 选项卡中,勾选 Generate peripheral initialization as C++ classes(如果可用)

春日负喧 发表于 2025-4-24 06:28 | 显示全部楼层
保护项目文件不被覆盖,防止 CubeMX 覆盖关键配置:在 CubeIDE 中,将以下文件标记为 只读(右键文件 → Properties Resource Read-only):.project(项目类型定义)

温室雏菊 发表于 2025-4-24 07:29 | 显示全部楼层
自定义生成后脚本,通过 User Code Sections 或 生成后脚本自动修复配置

故意相遇 发表于 2025-4-24 08:28 | 显示全部楼层
如果项目完全使用 C++,可手动转换:将所有 .c 文件重命名为 .cpp

白马过平川 发表于 2025-4-24 09:17 | 显示全部楼层
CubeMX 默认生成 C 项目 手动修改项目属性或保护配置文件

西洲 发表于 2025-4-24 10:35 | 显示全部楼层
升级 CubeMX 并启用 C++ 生成选项,这样就好了

您需要登录后才可以回帖 登录 | 注册

本版积分规则

70

主题

70

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部