#错误原因#
多是新代码编译用的toolchain 不对,导致编译出的.o 文件与依赖的库文件格式不兼容,无法生成bin 文件或lib.so 文件
#检查方式#
1. 检查汇编出.o 文件的格式与lib库文件格式是否不一致,结果发现一个是aarch 的,一个是X86-64的,正确的编译tool应该使用aarch
filr xxx.o
file libxxx.so
2. 在Makefile 中打印CC 路径(或检查编译log),检查编译时的CC tool, 进一步确定是编译tool 没传入进来
echo "---------------------------------$(CC)----------------------"
#解决办法#
1. 尝试make clean ,确保清除干净,重新编译
2.传入正确的编译tool进CC 路径
3.在Makefile 中显示声明.o 生成的CC编译tool (博主在这一步才解决问题)