我一直致力于为Raspberry Pi开发设置工具链。我设置the official Raspberry Pi cross-compiler没有问题,但现在我开始需要一些外部库,比如OpenSSL,以及最近发布的OpenMAX库。
将C / C ++库集成到交叉编译器中的最简单方法是什么?
答案 0 :(得分:1)
好的,所以我找到了一种方法来使用第三方库和交叉编译器,但它似乎不是最佳的。基本上,我只是将我需要的库安装到我的Raspberry Pi(运行Arch Linux)
pi:# pacman -S libssl-dev
然后使用
pi:# tar -zcvf include.tar.gz /usr/include
pi:# tar -zcvf lib.tar.gz /usr/lib
压缩我的Pi上的include和lib目录。
接下来,我将它们复制到我的本地机器(运行Debian squeeze的i686),通过sftp
运行交叉编译器:
debian:$ sftp root@<pi_ip_address>:/usr/include.tar.gz
debian:$ sftp root@<pi_ip_address>:/usr/lib.tar.gz
我使用该命令备份了交叉编译器的include
和lib
目录(以root身份,因为我的交叉目录位于/opt
)
debian:# tar -zcvf OLDinclude.tar.gz ./include
debian:# tar -zcvf OLDlib.tar.gz ./lib
并继续将Pi中的档案提取到交叉编译器的sysroot/usr/
目录。
最后,为了测试它是否有效,我使用<cross>-gcc
和<cross>-g++
编译了一个使用该库的程序。 。 。它工作了!现在,我可能会编写一个bash脚本来为我处理大部分这些步骤。如果有人对如何简化这一过程有任何提示,请告知。
注意:对于像我这样的其他Linux新手,'$'
表示普通用户shell,而'#'
表示超级用户(即root)shell。普通用户可以使用su
命令升级到超级用户。