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> 指定待分析的源文件
相关推荐
M78佐菲15 小时前
ARM学习笔记(11)
linux·arm开发·笔记·嵌入式硬件·学习
M78佐菲15 小时前
ARM学习笔记(10)
linux·arm开发·笔记·嵌入式硬件·学习
小诗懂技术16 小时前
【裸机lcd】framebuffer的配置与小型图像库的移植
arm开发·单片机·嵌入式硬件·裸机
SKH.17 小时前
ARM-时钟、定时器
arm开发
dadaobusi21 小时前
学习: ARM SMMU stream id
arm开发·学习
AOI小白新手上路1 天前
韦东山《ARM 架构与编程》3-2 GPIO 引脚操作方法概述 · 学习笔记
arm开发·学习·架构
AOI小白新手上路1 天前
韦东山《ARM 架构与编程》3-3 IMX6ULL 的 GPIO 操作方法 · 学习笔记
arm开发·学习·架构
Awh-1 天前
ARM 裸机开发 DAY5 学习笔记
arm开发·笔记·学习
Eloudy1 天前
全文 - 第 01 章 CHI Issue.B specification
arm开发·issue
狂奔蜗牛(bradley)2 天前
拒绝SOEM黑盒!死磕EtherCAT主站:ARM+FPGA架构、DC同步与状态机修复等,50+篇实战开发文档全公开
arm开发·fpga开发·架构