[STM32L4] STM32CubeIDE 升级后出现No rule to make target

[复制链接]
133|10
jerry尧 发表于 2026-2-19 19:33 | 显示全部楼层 |阅读模式

我将 STM32CubeIDE 升级到 1.8.0 版本,调试项目时出现了如下错误提示:
make: *** No rule to make target '../Core/Startup/startup_stm32l476rgtx.s', needed by 'Core/Startup/startup_stm32l476rgtx.o'. Stop.
我使用的开发板是 NUCLEO-L476RG,请问如何解决这个问题?

459916996e7eb7c3a1.png
800506996e80c80a3a.png
公羊子丹 发表于 2026-2-20 13:07 | 显示全部楼层
我怀疑是升级IDE后项目里的启动文件路径被搞乱了,你先检查下Core/Startup文件夹里到底有没有startup_stm32l476rgtx.s这个文件,要是丢了就从CubeMX重新生成一个放进去。
周半梅 发表于 2026-2-20 13:08 | 显示全部楼层
这问题太常见了,CubeIDE升级后会重置部分编译配置,你右键项目点C/C++ Build→Settings,检查下汇编文件的编译路径对不对,把Startup文件夹添加到源码路径里就好。
帛灿灿 发表于 2026-2-20 13:09 | 显示全部楼层
你有没有试过刷新项目的索引?升级IDE后索引容易失效,导致make找不到文件,右键项目选Index→Rebuild,再清理项目(Project→Clean)重新编译,大概率能解决。
童雨竹 发表于 2026-2-20 13:10 | 显示全部楼层
哈哈,我升级1.8.0也踩了这坑,最后发现是makefile里的启动文件名称大小写不对,IDE升级后对文件名大小写敏感了,你核对下文件和makefile里的名称是否完全一致。
万图 发表于 2026-2-20 13:11 | 显示全部楼层
我建议你直接用STM32CubeMX重新生成一遍项目代码,选择NUCLEO-L476RG开发板,生成时勾选对应启动文件,替换掉项目里旧的,适配新IDE版本就不会报这错了。
Wordsworth 发表于 2026-2-20 13:12 | 显示全部楼层
会不会是升级IDE后,项目的Build Path里丢失了Startup文件夹的引用?右键Startup文件夹→Build Path→Add to Build Path,把文件夹加入编译路径,再编译试试。
Bblythe 发表于 2026-2-20 13:13 | 显示全部楼层
好奇问下,你升级IDE后有没有动过项目的文件夹结构?要是挪过Core文件夹的位置,相对路径就错了,改回原来的结构,或者在makefile里修正启动文件的相对路径就行。
Pulitzer 发表于 2026-2-20 13:14 | 显示全部楼层
你可以检查下项目的属性里,汇编器的配置是否正常,CubeIDE1.8.0对ARM汇编器的路径配置有小改动,确认下gcc-arm-none-eabi-as的路径是否正确,没配对也会找不到文件。
Uriah 发表于 2026-2-20 13:14 | 显示全部楼层
这情况大概率是升级后旧的编译文件残留导致的,你删掉项目里的Debug、Release和build文件夹,再把IDE的工作空间缓存清一下,重新编译项目,让IDE重新生成编译文件。
Clyde011 发表于 2026-2-20 13:16 | 显示全部楼层
我记得CubeIDE1.8.0对CMSIS相关的文件路径要求更严格,你看下项目里是不是添加了多余的DSP库路径导致冲突?暂时删掉无关的库路径,只保留必要的,再试编译看还报错不。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

192

主题

216

帖子

0

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