编译工具
文章平均质量分 55
一抹晴空
这个作者很懒,什么都没留下…
展开
-
Source insight3.5函数跳转提示multiple locations,即有多处定义的解决办法
在使用Source insight3.5过程中,有时候跳转到函数定义时,会提示有几处地方有该函数,即multiple locations提示,如下图所示:其实这是因为我们经常在改代码的时候,会把工程备份,然后复制一份工程用来修改调试,这时候新复制出来的工程在跳转时就会出现这种状况。这里两个定义点是不同的工程路径下的,一处是在当前新拷贝的工程里,另一处定义的文件是在原有工程里。所以如果跳转到原有工程里的文件,然后修改该函数,那么最终修改的文件是属于原有工程的文件,这样就搞乱了原有工程代码,这很容易出问题。原创 2021-01-29 18:25:47 · 1757 阅读 · 0 评论 -
关于IAR for ARM 8.32打开旧版本工程无法跳转问题(高版本兼容低版本问题)
嵌入式开发/学习过程中,难免需要借鉴别人的工程,但是开发环境的匹配始终是个问题,要么是高版本不兼容低版本,要么是低版本不兼容高版本。低版本不兼容高版本还好,升级到高版本就好了。高版本不兼容低版本就有点麻烦了,本帖主要就是针对高版本不兼容低版本问题做出一些解决办法。最近在开发一个项目,是在原有的产品固件上进行添加功能。其中我自己用的是IAR for ARM 8.32版本,然后原有产品的固件用的是I...原创 2019-04-28 18:52:03 · 4342 阅读 · 2 评论 -
Keil编译生成的bin文件自动以版本号命名
通常代码里会有一个字段专门用来定义软件版本号,每次生成Hex/Bin文件后,要手动重命名文件名,保证和代码中定义的软件版本号一致,这时候就会觉得很麻烦,而且手动输入容易输错啥的。打开指定的源文件(.c/.h等),找到指定的定义软件版本号的字符(通常是用宏定义定义的),将指定的.bin、.hex文件拷贝到指定的目标文件夹,并以上一步获取的软件版本号命名。有的也用__DATA__和__TIME__(其中__DATE_ 和__TIME__是C语言中的内置宏,分别是当前的编译日期和编译时间),也可以。原创 2024-01-10 20:12:10 · 1943 阅读 · 0 评论