jtag - 使用 TRACE32 调试 Linux 内核源时显示 HLL C
问题描述
我正在使用 Linux 内核 LTS4.4(arm32、cortexa7)进行调试。
我已经成功构建了内核映像以及 vmlinux。
我正在使用 Debugger Lauterbach 和 Trace32 工具。并使用以下命令加载vmlinux和内核源
B:: data.load.Elf /home/compile-kernel/linux-4.4.138/vmlinux /PlusVM /STRIPPART 4 /PATH "/home/src-kernel"
加载进度成功,但我没有看到任何C 代码(HLL),只有asm。
之后,我尝试显示symbol.list.source 。但是,表List是空的。
你们能不能在这方面支持我!谢谢。
解决方案
加载内核符号:
步骤1:
- vmlinux
build/tmp/work/.../linux-kernel-standard-build/arch/arm/boot/vmlinux
- 内核源码
构建/tmp/work/.../linux-kernel-standard-build/source
第2步:
Data.LOAD.Elf /home/user/build/tmp/work/.../linux-kernel-standard-build/arch/arm/boot/vmlinux /NoCODE /STRIPPART "arch" /SOURCEPATH /home/user/build /tmp/work/.../linux-kernel-standard-build/source
结果:
推荐阅读
- c# - 相当于 Visual Studio for Mac 中的 Windows 窗体应用程序?
- graphql - Apollo 客户端/AWS AppSync JavaScript SDK 更改查询结果
- php - PHP 内部 Web 服务器提供意外字符的原因可能是什么?
- c# - 获取 Tree 中的所有孩子
- sql-server - 错误:Import-DbaCsvToSql:“++”运算符仅适用于数字。操作数是“System.IO.FileInfo”
- python - Google Cloud ML-engine scikit-learn 预测概率“predict_proba()”
- android - 区分静态片段和动态片段
- python - 如何从 Python 代码文件中设置 kivy 小部件 id
- asp.net - HttpContextWrapper 不返回正确的主机名
- java - ((Object)(this)).toString() 是否总是调用基本实现?