我目前正在使用GCC 4.5.3,为PowerPC 440编译,并且正在编译一些不需要libc的代码.我没有直接调用memcpy(),但编译器似乎在构建期间插入一个.
有一些链接器选项,如-nostdlib,-nostartfiles,-nodefaultlibs但我无法使用它们,因为我没有进行链接阶段.我只是在编译.有这样的事情:
$ powerpc-440-eabi-gcc -O2 -g -c -o output.o input.c
Run Code Online (Sandbox Code Playgroud)
如果我用nm检查output.o,我会看到对memcpy的引用:
$ powerpc-440-eabi-nm output.o | grep memcpy
U memcpy
$
Run Code Online (Sandbox Code Playgroud)
GCC手册页明确了如何使用链接器删除对memcpy和其他libc调用的调用,但我不希望编译器首先插入它们,因为我使用的是完全不同的链接器(不是GNU的ld) ,它不知道libc).
感谢您的任何帮助,您可以提供.