C++ 无法识别交叉编译项目Yocto libz.so文件

C++ 无法识别交叉编译项目Yocto libz.so文件,c++,linux,cross-compiling,yocto,C++,Linux,Cross Compiling,Yocto,我在尝试使用arm-poky-linux-gnueabi-g++进行交叉编译时遇到了一个问题,问题如下: 日志错误 /home/.../libz.so: file not recognized: File format not recognized 我的makefile包含指向包含引用文件的正确目录的路径,有人建议我如何修复它吗 EDIT1 在文件上运行命令“file”,系统返回以下结果: ->file libz.so ->libz.so: symbolic link to `li

我在尝试使用arm-poky-linux-gnueabi-g++进行交叉编译时遇到了一个问题,问题如下:

日志错误

/home/.../libz.so: file not recognized: File format not recognized
我的makefile包含指向包含引用文件的正确目录的路径,有人建议我如何修复它吗

EDIT1

在文件上运行命令“file”,系统返回以下结果:

->file libz.so
->libz.so: symbolic link to `libz.so.1.2.7'
EDIT2

并在libz.so.1.2.7上执行

->file libz.so.1.2.7
->libz.so.1.2.7: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0xc8ddf1808db4d41de52cea35bf10f6a8416ac42d, not stripped
EDIT3

完整错误:

Building target: SAT
Invoking: Cross GCC Linker
arm-poky-linux-gnueabi-gcc -L/home/.../build/tmp/sysroots/x86_64-linux/usr/lib -L/home/prjs/.../build/tmp/sysroots/imx28evk/usr/lib/ -L/home/prjs/.../build/tmp/sysroots/x86_64-linux/usr/include -L/usr/lib/x86_64-linux-gnu -lcurl -o "SAT"  ./src/prj/appSat.o ./src/prj/srvAc.o ./src/prj/srvFisco.o ./src/prj/srvLeds.o  ./src/api/soapFiles/soapC.o ./src/api/soapFiles/soapClient.o ./src/api/soapFiles/stdsoap2.o  ./src/api/apiAcParse.o ./src/api/apiAddTagsSATToCF.o ./src/api/apiAtivaSat.o ./src/api/apiBloqueio.o ./src/api/apiCallBack.o ./src/api/apiCfeComandos.o ./src/api/apiConfiguracoes.o ./src/api/apiEvent.o ./src/api/apiFiscoRequests.o ./src/api/apiFiscoUtils.o ./src/api/apiGPIO.o ./src/api/apiGeraComandosXML.o ./src/api/apiLanConfig.o ./src/api/apiMsg.o ./src/api/apiNvRam.o ./src/api/apiOutrosSat.o ./src/api/apiParametrizacao.o ./src/api/apiSeguranca.o ./src/api/apiSerial.o ./src/api/apiSignature.o ./src/api/apiThread.o ./src/api/apiTimer.o ./src/api/apiUtils.o ./src/api/apiValidaCF.o ./src/api/apiValidaUtils.o ./src/api/apiVendasSat.o ./src/api/apiWatchDog.o ./src/api/apiXSDValidation.o ./src/api/apiXmlUtils.o ./src/api/sha2.o ./src/api/strptime.o  ./src/SAT.o   -lpthread -lz -lgnutls -lgpg-error -lcap -ltasn1 -lcrypto -lssl -lgcrypt -lcurl -lxml2
/home/.../sysroots/x86_64-linux/usr/libexec/armv5te-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.7.2/ld: warning: library search path "/usr/lib/x86_64-linux-gnu" is unsafe for cross-compilation
/home/prjs/.../build/tmp/sysroots/x86_64-linux/usr/lib/libz.so: file not recognized: File format not recognized
collect2: error: ld returned 1 exit status
make: *** [SAT] Error 1

不,你需要提供更多信息。准确的错误信息。您还可以在该文件中运行
file
,向我们展示它是什么。问题已更新。如何更新
file libz.so.1.2.7
?更新运行在libz.so.1.2.7和完整错误之上,以及给出错误的命令(can到编译器、链接器等)。您还说您正在进行交叉编译,但未识别的libz.so在x86_64系统根上。。。这是您第二次运行的
文件
告诉我们的。这不是为了你的arm平台,而是为了你的主机。不,你需要提供更多信息。准确的错误信息。您还可以在该文件中运行
file
,向我们展示它是什么。问题已更新。如何更新
file libz.so.1.2.7
?更新运行在libz.so.1.2.7和完整错误之上,以及给出错误的命令(can到编译器、链接器等)。您还说您正在进行交叉编译,但未识别的libz.so在x86_64系统根上。。。这是您第二次运行的
文件
告诉我们的。这不是为了你的手臂平台,而是为了你的主人。