IAR EW for Arm - IAR命令行

注:以下内容基于IAR 9.70.1

1. iarbuild

iarbuild 是 IAR Embedded Workbench 自带的命令行构建工具,它为嵌入式软件开发提供了一种脱离图形界面的自动化构建方式。它的核心作用是将IDE中的"点击按钮"操作,转化为可在脚本、终端或服务器上自动执行的命令,是持续集成 (CI) 和自动化流程中的关键一环。

该工具的可执行文件为 IarBuild.exe(Windows)或 iarbuild(Linux),通常位于 IAR 安装目录的 common\bin 路径下。

Eg:

bash 复制代码
make_cmd = [
            os.path.join(iar_path, "IarBuild.exe"),
            project_path,
            "-build",
            "Debug",
            "-parallel",
            str(os.cpu_count()),
            "-log",
            "warnings",
        ]
最终执行:["C:\...\common\bin\IarBuild.exe", "project.ewp", "-build", "Debug", "-parallel", "16", "-log", "warnings"]

官方文档:上诉仅列出常用的命令,详细命令见EWARM_IDEGuide.ENU.pdf

2. icstat

icstat.exe 是 IAR 静态分析工具 C-STAT 的核心命令行引擎,直接执行代码分析。它可以被iarbuild、CMake 等工具调用,或在脚本中独立使用,以自动化检测代码缺陷和编码标准违规。

实际应用场景:利用icstat.exe实现单个C文件的静态分析,具体命令主要有下面三部分

1、指定icstat.exe路径

2、指定cstat.db路径

3、从cstatcommands.txt文件中获取整个分析过程需要的命令(每一行对应一个c文件的分析命令,可先读取最后一个参数,判断是否是指定的源文件,做到单个文件的静态分析分析)

备注:iarbuild的-cstat_analyze命令本质上是调用icstat.exe完成整个工程的静态分析

Eg:

bash 复制代码
第一步:iarbuild.exe "MCAL_Project.ewp" -cstat_cmds Debug -log all
这不做任何分析,只是根据工程配置生成 cstatcommands.txt,里面记录了每个 .c 文件的编译器调用参数。

第二步:icstat.exe --db <project>\Debug\C-STAT\cstat.db  <编译器参数>  <源文件.c>
   --db 指定分析结果写入的数据库(cstat.db)
   <编译器参数> 来自步骤① 生成的 cstatcommands.txt(宏定义、include 路径、编译选项等),保证分析与实际编译环境一致
   <源文件.c> 指定待分析的源文件
相关推荐
咯哦哦哦哦5 小时前
【deban13】系统 安装arm qt6.8.2
arm开发
磨十三1 天前
U-Boot
arm开发·嵌入式硬件
Discipline~Hai2 天前
ARM03-蜂鸣器和中断
c语言·arm开发·单片机·嵌入式硬件·嵌入式
byte轻骑兵3 天前
BlueZ源码编译环境配置全指南:Linux桌面原生编译 + 嵌入式ARM交叉编译 + 定制裁剪与调试实战
linux·arm开发·蓝牙·bluez·电脑蓝牙
武汉万象奥科4 天前
AGV导航控制器方案 | 基于HD-RK3576系列核心板的算控融合一体化平台
arm开发·嵌入式硬件·arm核心板·单板机
zlinear数据采集卡4 天前
从“脏信号”到“纳伏级纯净”:硬核拆解DABL7606的多级抗混叠滤波与24位过采样算法
arm开发·科技·嵌入式硬件·fpga开发·开源
透明的玻璃杯4 天前
Arm屏幕
arm开发
Fu_Lin_4 天前
Qt嵌入式从零基础到精通(01):Qt嵌入式开发全景图:从桌面Qt到ARM Linux
linux·arm开发·qt·qt5·嵌入式linux
XMAIPC_Robot5 天前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发