我正在从事一个项目,该项目依赖Lauterbach JTAG调试器硬件和软件,目标JTAG电缆的支持于2011年7月结束。我们在omap2处理器上使用Linux2.6.33内核。我们使用gcc 4.9.2构建内核映像(不确定绑定工具的哪个版本)。
对于那些不熟悉Lauterbach如何授权其软件的人,目标电缆(在调试荚和目标之间连接)携带支持合同日期。任何版本的劳特巴赫跟踪-32软件之前和结束的支持期可以使用,但任何结束后,对电缆的支持,除了一个30分钟的会议演示期。我们正在通过我们的采购过程来续签电缆的支持合同,但在完成之前(可能需要几个月),我们就会陷入困境。
看来,我们正在使用的工具链产生的调试信息对于在2017年7月之前发布的跟踪-32调试器软件的最后版本来说太新了。尝试使用以下命令加载内核映像(vmlinux)的符号:
data.load.elf \\path\to\vmlinux /nocode失败,其消息类似于:
error: entry near offset 5432100. in file \\path\to\vmlinux (use DUMP)最简单的解决方案,当然,是更新到第一个版本的跟踪-32软件,支持任何ELF/侏儒组合,我们的工具链产生。我们知道最新的版本是可行的,但是我们的电缆不支持这个版本,直到我们的采购人员弄清楚这是测试设备还是软件(他们来自不同的预算)。
在接下来的几个月里,我们需要一个解决方案。我在寻找以下之一:
我事先感谢大家的帮助。
编辑:我不能100%确定工具链是生成DWARF3还是DWARF4,所以我可能需要制作一个ELF/DWARF2 2 "vmlinux“
发布于 2017-06-09 22:58:49
对你的三个想法:
-g -gdwarf-2 -gstrict-dwarf
或者你可以试试gcc的4.4版(或更高版本),它似乎适合2011年。https://stackoverflow.com/questions/44464689
复制相似问题