【问题标题】:Cross-compiling boost 1.7 for ARM Raspberry pi 3ARM Raspberry pi 3 的交叉编译 boost 1.7
【发布时间】:2019-11-23 12:12:30
【问题描述】:

我正在尝试让我的 boost 交叉编译为我的 raspberry 项目做好准备。到目前为止,我的项目的交叉编译一直在运行,但现在我需要开始使用一些增强功能。 为了做到这一点,我正在尝试编译它,并且我正在遵循许多指南(主要的是 this 一个),但是在执行 bjam 时出现了一些错误:

./bjam install toolset=gcc-arm --prefix=~/libs/ --disable-long-double --sNO_ZLIB=1 --sNO_BZIP2=1

通过将project-config.jam 文件修改为using gcc : arm : arm-linux-gnueabi-g++ ; 来识别工具链

我在我的 Windows 10 上使用 WSL debian 来完成这一切。你会在路径上看到它。

这是我得到的错误:

*** argument error
* rule numbers.less ( n1 n2 )
* called with: ( 4 )
* missing argument n2
/mnt/d/Downloads/boost_1_70_0/tools/build/src/util/numbers.jam:66:see definition of rule 'numbers.less' being called
/mnt/d/Downloads/boost_1_70_0/tools/build/src/tools/common.jam:854: in common.format-name
/mnt/d/Downloads/boost_1_70_0/tools/boost_install/boost-install.jam:87: in boost-install.generate-cmake-variant-
/mnt/d/Downloads/boost_1_70_0/tools/build/src/kernel/modules.jam:107: in modules.call-in
/mnt/d/Downloads/boost_1_70_0/tools/build/src/util/indirect.jam:105: in indirect.call
/mnt/d/Downloads/boost_1_70_0/tools/build/src/build/virtual-target.jam:902: in execute
/mnt/d/Downloads/boost_1_70_0/tools/build/src/build/virtual-target.jam:821: in class@action.actualize
/mnt/d/Downloads/boost_1_70_0/tools/build/src/build/virtual-target.jam:332: in actualize-action
/mnt/d/Downloads/boost_1_70_0/tools/build/src/build/virtual-target.jam:518: in actualize-no-scanner
/mnt/d/Downloads/boost_1_70_0/tools/build/src/build/virtual-target.jam:142: in class@virtual-target.actualize
/mnt/d/Downloads/boost_1_70_0/tools/build/src/build-system.jam:810: in load
/mnt/d/Downloads/boost_1_70_0/tools/build/src/kernel/modules.jam:295: in import
/mnt/d/Downloads/boost_1_70_0/tools/build/src/kernel/bootstrap.jam:139: in boost-build
/mnt/d/Downloads/boost_1_70_0/boost-build.jam:17: in module scope

我对此很迷茫。上周我一直在寻找解决方案,现在我放弃了。有人知道怎么回事吗?

我已经安装了这个编译器和交叉编译器:

g++/stable,now 4:6.3.0-4 amd64 [installed,automatic]
g++-6/stable,stable,now 6.3.0-18+deb9u1 amd64 [installed,automatic]
g++-6-arm-linux-gnueabi/stable,now 6.3.0-18cross1 amd64 [installed,automatic]
g++-arm-linux-gnueabi/stable,now 4:6.3.0-4 amd64 [installed]
gcc/stable,now 4:6.3.0-4 amd64 [installed,automatic]
gcc-6/stable,stable,now 6.3.0-18+deb9u1 amd64 [installed,automatic]
gcc-6-arm-linux-gnueabi/stable,now 6.3.0-18cross1 amd64 [installed,automatic]
gcc-6-arm-linux-gnueabi-base/stable,now 6.3.0-18cross1 amd64 [installed,automatic]
gcc-6-base/stable,stable,now 6.3.0-18+deb9u1 amd64 [installed]
gcc-6-cross-base/stable,now 6.3.0-18cross1 all [installed,automatic]
gcc-arm-linux-gnueabi/stable,now 4:6.3.0-4 amd64 [installed]

【问题讨论】:

    标签: c++11 boost arm cross-compiling


    【解决方案1】:

    这个可以忽略。这是其中一个 bjam 文件中的错误。您可以关注this link了解更多信息

    【讨论】:

      猜你喜欢
      • 2012-07-19
      • 2014-03-01
      • 2012-06-28
      • 2021-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多