easonchanel 发表于 2012-02-23 16:40

出错arm-linux/bin/ld: skipping incompatible /usr/local/arm/3.4.1/lib/gcc/arm-lin

小弟把一个.so文件加载到我现在的程序里,在make的时候出现以下情况:
arm-linux-gcc -L. -lortp -lpthread -lhcnetsdk -o rtp_enc_cam.out main.o vpu_io.o vpu_lib.o vpu_util.o RtpManage.o enc.o capture.o display.o fb.o
/usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/../../../../arm-linux/bin/ld: skipping incompatible ./libhcnetsdk.so when searching for -lhcnetsdk
/usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/../../../../arm-linux/bin/ld: skipping incompatible /usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/libhcnetsdk.so when searching for -lhcnetsdk
/usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/../../../../arm-linux/bin/ld: skipping incompatible /usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/../../../../arm-linux/lib/libhcnetsdk.so when searching for -lhcnetsdk
/usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/../../../../arm-linux/bin/ld: skipping incompatible /usr/local/arm/3.4.1/arm-linux/bin/../lib/libhcnetsdk.so when searching for -lhcnetsdk
/usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/../../../../arm-linux/bin/ld: skipping incompatible /usr/local/arm/3.4.1/arm-linux/bin/../../arm-linux/lib/libhcnetsdk.so when searching for -lhcnetsdk
/usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/../../../../arm-linux/bin/ld: cannot find -lhcnetsdk
collect2: ld returned 1 exit status
我确定libhcnetsdk.so这个库已经放到我的路径下了,但是还是出现这种不兼容的情况,该怎么解决呢?我file了一下,发现它是:
libhcnetsdk.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), stripped
对这个我不是太懂,给位高手,给点意见啊!

EricFisher 发表于 2012-02-23 17:14

你在编译ARM程序,但是使用的库却是x86的。找一个ARM的静态库即可。

easonchanel 发表于 2012-02-24 14:54

这个是不是和我用的交叉编译链有关呢?我用的arm-linux-gcc,这.so是开发包中的,用的g++,我重新编译一下?
找个静态库?。。小弟比较菜鸟,该如何操作呢?EricFisher 发表于 2012-02-23 17:14 static/image/common/back.gif
你在编译ARM程序,但是使用的库却是x86的。找一个ARM的静态库即可。
页: [1]
查看完整版本: 出错arm-linux/bin/ld: skipping incompatible /usr/local/arm/3.4.1/lib/gcc/arm-lin