为什么GCC将源文件名填充到elf对象中?如何阻止它?

时间:2016-05-10 17:07:56

标签: gcc elf

为什么GCC似乎总是将源文件名填入elf对象?

其次,如何在编译时停止它?

当我想构建一个树外的内核模块时,我的构建目录被填充到内核对象中。我想不出任何原因(除了调试跟踪)为什么gcc总是将源文件名/文件路径粘贴到elf对象中。

示例:

/* test_this_is_a_dumb_string_that_gcc_keeps_adding.c */
int func(void)
{
    int a = 1;
    return 0;
}

然后建立:

arm-linux-gcc -c -o test.o test_this_is_a_dumb_string_that_gcc_keeps_adding.c
arm-linux-ld -r test.o -o test.ko

然后在xxd中看到字符串:

xxd -g 1 test.ko

0 个答案:

没有答案