[其他ST产品] 更改外设配置并生成项目时STM32CubeIde都会重置设置

[复制链接]
961|10
 楼主| zhouyou99 发表于 2025-4-4 10:00 | 显示全部楼层 |阅读模式
习惯用 STM32CubeIde 来配置硬件、外设、作系统等,但是当重新进行配置时,我注意到 头文件路径也被重置了。
因此,每次我更改外设配置并生成项目时,都会重置设置,此时需要手动添加每个源文件夹。
有没有办法避免这种情况?

公羊子丹 发表于 2025-4-5 07:40 | 显示全部楼层
我也踩过这个坑,CubeMX每次重新生成代码的时候,会覆盖.cproject和.project里的配置,所有你手动加的include path都会丢。
周半梅 发表于 2025-4-5 07:41 | 显示全部楼层
建议你把自己的include路径加到Project→Properties→C/C++General→Paths and Symbols→User标签下,这样Cube生成的时候就不会覆盖。
帛灿灿 发表于 2025-4-5 07:42 | 显示全部楼层
你可以改用User defined sections,在代码里加/*USER CODE BEGIN*/的区域,这样Cube不会动你写的东西,但路径还是要配置在IDE里。
童雨竹 发表于 2025-4-5 07:43 | 显示全部楼层
其实最稳定的办法是用外部Makefile或CMake管理你的路径和编译,不依赖Cube自动生成那套。
万图 发表于 2025-4-5 07:44 | 显示全部楼层
试试在.ioc目录同级新建.project和.cproject的只读备份文件,改完之后手动替换回来,也是一种土办法保住配置。
Wordsworth 发表于 2025-4-5 07:45 | 显示全部楼层
我一般是在生成代码后把include的路径改成用相对路径,并把Cube生成文件结构固定,这样后面重新生成也不影响头文件搜索。
Bblythe 发表于 2025-4-5 07:45 | 显示全部楼层
你在CubeMX的生成选项里是不是没有勾选“保留用户代码”?那个不只影响代码,也可能影响一些项目文件的保留策略。
Pulitzer 发表于 2025-4-5 07:46 | 显示全部楼层
还有一种办法,把所有你自己写的源码放到一个单独文件夹,然后在项目里只把那个路径加一次,每次生成都不用重新加。
Uriah 发表于 2025-4-5 07:47 | 显示全部楼层
如果是用Git管理项目的话,建议把.project和.cproject排除提交,每次修改.ioc后用diff工具看看改了什么再手动合并。
Clyde011 发表于 2025-4-5 07:48 | 显示全部楼层
你可以写个小脚本自动在每次生成代码后,自动替换include path的XML片段,我就用Python处理.cproject里路径恢复。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

54

帖子

0

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