我用鲲鹏DevKit的编译工具链做交叉编译,宿主机是x86 Ubuntu 20.04,目标是鲲鹏920。已经按文档装好了toolchain,PATH和LD_LIBRARY_PATH也都配置了。
现在的问题是:编译简单程序不链接库时正常,一旦加上-lm或者链接自己交叉编译好的第三方库,就报错cannot find -lm或者找不到so文件。库文件确实存在于sysroot/usr/lib/aarch64-linux-gnu目录下,权限也没问题。用-L手动指定路径,甚至写死完整路径,结果都一样。用ld的--verbose查看搜索路径,打印出来的列表里没有我指定的目录。
换用原生的交叉编译工具链可以正常编译,但DevKit里有针对鲲鹏架构的优化选项,我还是希望能用这套工具链。请问可能是什么原因?该如何解决?
我用鲲鹏DevKit的编译工具链做交叉编译,宿主机是x86 Ubuntu 20.04,目标是鲲鹏920。已经按文档装好了toolchain,PATH和LD_LIBRARY_PATH也都配置了。
现在的问题是:编译简单程序不链接库时正常,一旦加上-lm或者链接自己交叉编译好的第三方库,就报错cannot find -lm或者找不到so文件。库文件确实存在于sysroot/usr/lib/aarch64-linux-gnu目录下,权限也没问题。用-L手动指定路径,甚至写死完整路径,结果都一样。用ld的--verbose查看搜索路径,打印出来的列表里没有我指定的目录。
换用原生的交叉编译工具链可以正常编译,但DevKit里有针对鲲鹏架构的优化选项,我还是希望能用这套工具链。请问可能是什么原因?该如何解决?