В настоящее время я использую GCC 4.5.3, скомпилированный для PowerPC 440, и компилирую код, который не требует libc. У меня нет прямых вызовов memcpy(), но компилятор, кажется, вставляет его во время сборки.
Существуют такие параметры компоновщика, как -nostdlib, -nostartfiles, -nodefaultlibs, но я не могу их использовать, поскольку я не выполняю этап связывания. Я только компилирую. Что-то вроде этого:
$ powerpc-440-eabi-gcc -O2 -g -c -o output.o input.c
Если я проверяю output.o на nm, я вижу ссылку на memcpy:
$ powerpc-440-eabi-nm output.o | grep memcpy
U memcpy
$
Справочная страница GCC дает понять, как удалить вызовы memcpy и других вызовов libc с помощью компоновщика, но я не хочу, чтобы компилятор вставлял их в первую очередь, поскольку я использую совершенно другой компоновщик ( не GNU ld, и он не знает о libc).
Спасибо за любую помощь, которую вы можете предоставить.