开发语言:python; 针对工程:适配ARM公司的KEIL-V5软件的工程
管理的输出文件类型:BIN文件、HEX文件
脚本使用方法:直接放置到keil的设置项下; 脚本执行位置:程序编译之后
脚本功能:将KEIL工程输出的BIN文件、HEX文件以软件版本号+hash值的方式重新命名后移动到指定文件夹
实现方法(技术摘要):
1、脚本通过正则运算的方式从C源文件中获取到软件版本,若获取不到则自动切换为将脚本传参做为版本号
2、通过第三方库git-Repo获取此KEIL工程最后一次提交的hash值
3、在路径下查找编译后生成的BIN和HEX文件,将上述过程中采集到的信息组合后作为新名字
4、重命名之后将两个文件放入指定文件夹,同时在keil的Build Ouput中打印执行中的信息
5、通过此脚本可以将输出文件名和软件版本号与提交记录关联起来,集中历史版本到同一文件夹,也方便管理和查找
-
lead_name.exe是已经打包好的可执行文件,lead_name code.rar是源文件压缩包
-
需要将exe文件路径放到keil的Options - User - After Build/Rebuild中,例./board/script/lead_name.exe
-
脚本执行成功后会自动将生成的bin和hex文件命名为1.0.0.commit hash格式,并移动到./build/fw中
-
执行过程中会在keil的Build Ouput中打印信息
注意事项:
-
hex和bin的默认生成名字必须是rtthread,在Options - Output -Name of Executable中修改hex名字,在Options - User - After Build/Rebuild中修改bin名字
-
hex的默认路径是./build,bin的默认路径是工程根目录
-
版本的名字在脚本执行的后面,例./board/script/lead_name.exe 1.0.3,如果没有输入脚本,自动在board.h中查找1.0.0格式的版本
链接:https://pan.quark.cn/s/d97a3f52fff6
提取码:mxgG