前一天都还是十几秒的编译时间,第二天编译就变成了四分多钟
![]()
网上找了很多方法:
1. 工程配置问题
检查 Options for Target 中的设置:“Use Cross-Module Optimization”(跨模块优化) 在大型工程中可能会显著拖慢编译,如果勾选了可以先取消试试。同时可以确认“Output”选项卡下的“Create Batch File”是否也未勾选。
2. 编译器版本变更
如果你最近升级过 Keil 版本(例如到 5.40),改用较新的 AC6 编译器链通常比旧版 AC5 编译更快。可以在 Target 选项卡的 ARM Compiler 中切换测试。
3. 工程文件累积
工程目录下的 Objects 和 Listings 文件夹会积累大量中间文件。可以先手动删除这两个文件夹,再进行一次“Rebuild”,这往往能起到立竿见影的效果。
4. 杀毒软件扫描
部分杀毒软件(如 360、火绒或 Windows Defender)会在编译时实时扫描生成的文件。可以将 Keil 的安装目录和你的所有工程目录添加到杀毒软件的排除列表中。
解决方案:
以上方法都没有解决,最后发现自己早上过来看代码的时候F12无法跳转函数定义,找资料修改了输出勾选了Output->Browse Infomation😂:

把这个选项取消勾选即可恢复正常编译速度。






