一、报错问题
链接命令
../../../../toolchains/tricore_940_linux/bin/tricore-elf-gcc -o Photon2.elf -nocrt0 -nostartfiles -T oslinker.lds -Wl,--gc-sections -mtc162 -Wl,--warn-orphan -Wl,--cref -fshort-double -Wl,-n -Wl,--extmap="a" main.o -lphoton -L.;
二、报错原因
默认情况下,对于未使用到的符号(函数是一种符号),链接器不会将它们链接进共享库和可执行程序。
这个时候,可以启用链接参数“–whole-archive”来告诉链接器,将后面库中所有符号都链接进来,参数“-no-whole-archive”则是重置,以避免后面库的所有符号被链接进来。
三、解决方法
添加-Wl,–whole-archive -lXXX -Wl,–no-whole-archive
../../../../toolchains/tricore_940_linux/bin/tricore-elf-gcc -o Photon2.elf -nocrt0 -nostartfiles -T oslinker.lds -Wl,--gc-sections -mtc162 -Wl,--warn-orphan -Wl,--cref -fshort-double -Wl,-n -Wl,--extmap="a" main.o -lphoton -L.;
解决现象,不会再报警告错误