2012-04-03 267 views
0

我想交叉编译portaudio以便在ARM系统(devkit8000)上使用它。我想用这种方式针对ARM架构的交叉编译portaudio

CXX=../cross/arm-2007q3/bin/arm-none-linux-gnueabi-g++ ./configure --target=arm-linux --host=arm-linux 

使用与该板发出的交叉编译工具(ARM-NONE-Linux的gnueabi),但是当我尝试portaudio对象与我的源代码链接编译它告诉我

../cross/arm-2007q3/bin/arm-none-linux-gnueabi-g++ -L../portaudio/lib/.libs -lportaudio prova.cpp 
../portaudio/lib/.libs/libportaudio.so: file not recognized: File format not recognized 
collect2: ld returned 1 exit status 
+1

检查此路径中的ARM库'。/ portaudio/lib' ARM库通常具有'.a'扩展名。 '.so'通常在x86 – 2012-04-03 09:08:44

+0

是的,它是用x86 gcc编译的,谢谢。也许我找到了一个解决方案:我把我的交叉编译bin路径放到PATH变量中,然后我用这种方式调用configure'CC = ../cross/arm-2007q3/bin/arm-none-linux-gnueabi-gcc CXX = ../cross/arm-2007q3/bin/arm-none-linux-gnueabi-g++ ./configure --target = arm-none-linux-gnueabi --host = arm-none-linux-gnueabi'。编译我的源代码现在返回,没有错误..我现在试着部署它在板上 – gc5 2012-04-03 09:12:46

+0

如果一切顺利,请告诉我。我会把我的评论作为答案,以便您可以接受它;-) – 2012-04-03 09:14:13

回答

0

最后我用了bitbake和openembedded。只是添加到我的bitbake的食谱

DEPENDS = "portaudio-v19" 

bitbake的建立portaudio为你的机器,你必须只复制ipk包(在我的情况下,使用Angstrom 2012.05)从tmp/deploy/...子目录到你的系统,并安装它(在Angstrom 2012.05):

opkg install <package_name>.ipk