在Linux服务器上使用IAR Build Tools实现DevOps和CI/CD

近些年来,随着嵌入式软件越来越复杂,DevOps和CI/CD也开始被引入到嵌入式软件开发中,越来越多的自动化构建(Build)和测试都放到Linux服务器上来提升研发效率。为了帮助用户更好地在Linux服务器上使用IAR工具,IAR于2020年推出了可以在Linux服务器上运行的IAR Build Tools。IAR Build Tools可以在Linux服务器上完成自动化构建和C-STAT静态代码分析。IAR Build Tools for Arm (BXARM) v9.50.1实现了下载调试和C-RUN动态代码分析,支持Simulator和I-jet。BXARM v9.60.1实现了下载调试和C-RUN动态代码分析对J-Link的支持。 

本文主要以BXARM为例介绍如何在Linux服务器上使用IAR Build Tools实现DevOps和CI/CD,包含自动化构建、C-STAT静态代码分析、下载调试和C-RUN动态代码分析。 

在EWARM中准备好对应的工程

BXARM和EWARM的后台实现是一样的,为了更方便地实现自动化脚本,建议先用EWARM准备好对应的工程,然后在Windows的命令行先验证,最后再适配到Linux服务器上的BXARM(当然,也可以从零开始实现BXARM的自动化脚本)。 

在EWARM中进行构建

先在EWARM中构建成功: 

Image

在EWARM中进行C-STAT静态代码分析

更多关于在EWARM中进行C-STAT静态代码分析的信息,请参考往期技术文章"在日常开发中使用IAR C-STAT进行静态代码分析,提高代码质量"。

温馨提示:对于不需要进行静态代码分析的代码(比如自动生成的代码,第三方的代码等)可以将对应代码的检查规则全部设置为空,以提升静态代码分析的效率:

Image

在EWARM中进行下载调试

先在EWARM中进行下载调试,确保下载调试的环境是OK的:

Image

在EWARM中进行C-RUN动态代码分析

更多关于在EWARM中进行C-RUN动态代码分析的信息,请参考往期技术文章"在日常开发中使用IAR C-RUN进行动态分析,提高代码质量"。

Image

在Windows上进行命令行自动化操作

使用iarbuild命令进行构建

在Windows命令行上可以使用iarbuild(在安装目录common\bin文件夹)命令(-build)进行构建:

Image

Image

   使用iarbuild命令进行C-STAT静态代码分析

在Windows命令行上可以使用iarbuild命令进行C-STAT静态代码分析(-cstat_analyze)并导出对应的静态代码分析报告(-cstat_report):

Image

使用cspybat命令进行下载调试

在EWARM中进行下载调试之后会在对应工程目录下面settings文件夹下面自动生成对应的下载调试bat文件,然后直接运行对应的bat文件(会自动调用对应的cspybat命令)就可以进行下载调试:

Image

在EWARM v9.60.1中,可以使用iarbuild命令生成对应的bat文件:

Image

使用cspybat命令进行C-RUN动态代码分析

可以使用cspybat命令进行动态代码分析(对应命令跟下载调试命令一样,只是对应的代码使能了C-RUN动态代码分析),更多关于在独立模式下进行C-RUN动态代码分析,请见文末参考资料:在独立模式下进行C-RUN运行时分析。

Image

Image

在Linux上使用IAR Build Tools进行自动化操作

使用iarbuild命令进行构建

跟Windows类似,在Linux上可以使用iarbuild命令(-build)进行构建:

Image

Image

使用iarbuild命令进行C-STAT静态代码分析

跟Windows类似,可以在Linux上可以使用iarbuild命令进行C-STAT静态代码分析(-cstat_analyze)并导出对应的静态代码分析报告(-cstat_report):

Image

使用cspybat命令进行下载调试

在Linux上使用对应的cspybat命令进行下载调试:

Image

在最新的BXARM v9.60.1中,可以使用iarbuild命令生成对应的sh文件:

Image

使用cspybat命令进行C-RUN动态代码分析

可以使用cspybat命令进行动态代码分析(对应命令跟下载调试命令一样,只是对应的代码使能了C-RUN动态代码分析):

Image

Image

温馨提示:当前Linux上的BXARM没有对应的图形化界面,如果想在Linux上进行图形化界面调试,需要使用Linux上的VS Code搭配IAR VS Code的扩展:

Image

总结

本文主要介绍了如何通过在EWARM中创建工程,然后到在Window命令行进行自动化脚本运行,最后以BXARM为例在Linux服务器上使用IAR Build Tools实现DevOps和CI/CD,包含自动化构建、C-STAT静态代码分析、下载调试和C-RUN动态代码分析。

参考资料:

  1. 在日常开发中使用IAR C-STAT进行静态代码分析,提高代码质量
    https://www.iar.com/zh/knowledge/learn/code-quality/increse-code-quality-with-c-stat 

  2. 在日常开发中使用IAR C-RUN进行动态分析,提高代码质量
    https://www.iar.com/zh/knowledge/learn/code-quality/increse-code-quality-with-c-run

  3. 在独立模式下进行C-RUN 运行时分析      https://www.iar.com/zh/knowledge/learn/code-quality/c-run-in-stand-alone-mode 

  4. IAR Embedded Workbench IDE Project Management and Building Guide (iarbuild)

  5. IAR Embedded Workbench C-SPY® Debugging Guide (The C-SPY command line utility—cspybat)

  6. IAR VS Code扩展https://www.iar.com/zh/product/visual-studio-code-extension

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值