【发布时间】:2015-12-16 08:13:38
【问题描述】:
我在 amd64 机器上使用 arm-linux-gnueabihf-g++-4.8 来交叉编译针对 ARM 32 位架构的 boost。我的操作系统是 Ubuntu 14.04。
因为编译器没有自带 libbz2,所以编译 liblibboost_iostreams 失败。以下是错误详情,
/usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/../../../../arm-linux-gnueabihf/bin/ld:找不到-lbz2 collect2: error: ld 返回 1 个退出状态。
很难弄清楚如何为 arm-linux-gnueabihf-g++-4.8 安装这个 libbz2。网上没找到太多文档。需要一些帮助。非常感谢!
【问题讨论】:
-
交叉链接库的标准清单:您是否已经在目标上安装了 libbz2(或允许您轻松完成的发行版)?如果是这样,请使用它(或者复制它,或者更好地使用指向目标文件系统的 --sysroot 进行交叉编译)。否则,只需 grab the source 并交叉编译它!检查 makefile(s) 以查看它们是否允许交叉编译器前缀,或者您必须自己编辑 $CC 等变量,并且不要期望任何可执行的自测通过;)
标签: c++ linux ubuntu arm cross-compiling