news 2026/2/26 15:59:18

objdump、nm、addr2line命令解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
objdump、nm、addr2line命令解析

代码

Set-Location 'D:\TBOX\SDK\QSR01A01_C_SDK_LTE_E_BETA20251225\qos_build\release\EC800ZCNLFR01A01M04_BETA0403_OCPU\DBG' $env:Path = 'D:\unirtos-toolchain\gcc-arm-none-eabi-10.2.1\bin;D:\unirtos-toolchain\bin;' + $env:Path cmd /c "where arm-none-eabi-objdump.exe" arm-none-eabi-objdump.exe -d -S --demangle --line-numbers ap_application.elf > ap_application.disasm.S arm-none-eabi-objdump.exe -h ap_application.elf > ap_application.sections.txt arm-none-eabi-nm.exe -n ap_application.elf > ap_application.nm.txt # 示例:用 nm 里真实存在的符号地址 0x00a62d28(ql_rtos_task_create) arm-none-eabi-addr2line.exe -e ap_application.elf -f -C 0x00a62d28 # 同一地址反汇编一小段(避免全量) arm-none-eabi-objdump.exe -d --demangle --line-numbers --start-address=0x00a62d28 --stop-address=0x00a62d28+0x120 ap_application.elf > example_ql_rtos_task_create.disasm.txt

你这段 PowerShell 脚本的核心目的是:切换到指定的固件编译输出目录,配置 ARM 嵌入式工具链的环境变量,然后使用 ARM 官方工具链中的objdumpnmaddr2line等工具,对嵌入式固件文件ap_application.elf进行反汇编、符号分析和地址溯源,是嵌入式开发中调试固件、定位代码问题的典型操作。

下面我先整体解释脚本的作用,再重点拆解你关心的objdumpnmaddr2line命令。

脚本整体执行流程

  1. Set-Location:切换到固件文件所在的目录(DBG 目录),确保后续命令能找到目标文件ap_application.elf
  2. $env:Path:将 ARM 工具链的bin目录添加到系统环境变量Path中,让系统能找到arm-none-eabi-*系列工具。
  3. cmd /c "where arm-none-eabi-objdump.exe":验证工具是否能被系统找到(排查环境变量配置问题)。
  4. 后续的arm-none-eabi-*命令:对ap_application.elf(嵌入式固件的可执行文件)进行反汇编、符号分析、地址溯源。

核心命令详解

1. arm-none-eabi-objdump.exe(最核心的反汇编工具)

objdump是 ARM 工具链中用于分析目标文件(如.elf、.o)的工具,核心作用是将二进制的机器码转换成人类可读的汇编代码还能解析文件的段信息、符号表等

你用到的参数含义
-d
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/26 2:04:29

基于GTE大模型的语义相似度实践|可视化WebUI+API集成方案

基于GTE大模型的语义相似度实践|可视化WebUIAPI集成方案 1. 背景与核心价值 在自然语言处理(NLP)领域,语义相似度计算是构建智能搜索、推荐系统、问答引擎和文本聚类等应用的核心能力。传统方法依赖关键词匹配或TF-IDF等统计特征…

作者头像 李华
网站建设 2026/2/24 17:12:27

AI应用架构师如何运用AI算法优化智能财务AI预测系统

AI应用架构师如何运用AI算法优化智能财务AI预测系统 一、引入:财务预测的“生死局”与AI的破局之路 1. 一个真实的痛点故事 某零售企业的财务总监最近愁得睡不着觉: 上季度的营收预测偏差高达25%——原本预计营收1.2亿,实际只做了9000万&…

作者头像 李华
网站建设 2026/2/25 18:32:57

【Java毕设全套源码+文档】基于Web的多传感器健康管理系统的设计与实现(丰富项目+远程调试+讲解+定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/2/25 14:57:45

做好项目管理,无非就是三件事:盯、拆、对!

很多团队一到项目关键期,就开启全员熬夜模式:凌晨三点还在群里人改稿,周末全员线上开会,交付前一周集体住在公司……看起来很拼,但结果呢?要么勉强上线漏洞百出,要么干脆延期,客户不…

作者头像 李华
网站建设 2026/2/24 22:48:39

高效融合视觉语音文本|AutoGLM-Phone-9B模型本地化应用实践

高效融合视觉语音文本|AutoGLM-Phone-9B模型本地化应用实践 1. 引言:移动端多模态大模型的落地挑战 随着AI技术向终端设备下沉,如何在资源受限的移动平台上实现高效、低延迟、多模态融合的大语言模型推理,成为当前智能硬件与边缘…

作者头像 李华
网站建设 2026/2/21 15:56:25

如何高效部署轻量化多模态模型?基于AutoGLM-Phone-9B的完整实践指南

如何高效部署轻量化多模态模型?基于AutoGLM-Phone-9B的完整实践指南 1. 引言:移动端多模态推理的挑战与机遇 随着AI大模型向终端设备下沉,在资源受限环境下实现高效多模态推理成为智能硬件、边缘计算和移动应用的核心需求。传统大模型因参数…

作者头像 李华