添加一个头文件后Keil 编译速度明显下降的问题记录

在工作中开发了一个LOG 模块,LOG模块中存在大量的宏处理。在LOG 模块开发完成后,将log.h头文件加入到工程代码包含中后,发现项目编译时间从1分钟左右直接变成了7分钟。

查阅了很多资料怀疑是太多头文件包含问题,但是过多的头文件包含应该导致编译速度成几倍的下降。log.h 中并未引用过多的头文件。 而且此log模块是通过Zephyr 修改过来的,如果头文件包含引起的问题,理论上Zephyr 编译速度应该同样很慢,但是zephyr 编译却正常。

调整了Keil 工程配置,关闭了Browse Information 选项,发现编译速恢复正常。 导致此问题的根本原因是Keil 的代码解析器做的太烂,导致当存在大量的宏定义项时就会导致代码编译速度变慢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值