为什么LD在组合我的目标文件时剥离调试信息?

时间:2014-10-09 15:44:44

标签: c linker embedded ld debug-symbols

我有一个链接器脚本,可以将大量目标文件组合在一起。相关部分如下所示:

.usr {
    Build/usr/*.o
} > sdram

所有目标文件(Build / usr / * o)都包含调试信息(可以使用objdump -S进行验证,显示C行号和反汇编之间的对应关系。)

但是,生成的elf文件中没有.usr部分中代码的调试信息。

作为一项实验,我将相关部分更改为:

.usr : {
   Build/usr/*(.text);
   Build/usr/*(.data);
   Build/usr/*(.bss COMMON);
 } > sdram

问题消失了。

有谁能说明为什么这样才能解决问题?

0 个答案:

没有答案