tc397交叉编译链接静态库报错tricore-elf/bin/ld: warning: cannot find entry symbol _START; defaulting to 00000000

一、报错问题
在这里插入图片描述
链接命令

../../../../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.;

解决现象,不会再报警告错误
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值