试图在WSL Debian中交叉编译boost 1.69.0,我在没有icu或python支持的情况下运行bootstrap.sh。添加后
使用gcc:arm:arm-linux-gnueabihf-g++;
到project-config.jam
运行./b2 install
时出现以下错误
Performing configuration checks
- default address-model : 32-bit
- default architecture : arm
error: No best alternative for libs/context/build/asm_sources
next alternative: required properties: <abi>aapcs <address-model>32 <architecture>arm <binary-format>elf <threading>multi <toolset>clang
not matched
它持续了好几行。
- 哪里出了问题
- 既然我不能直接在目标系统上构建,因为它没有足够的hdd,你建议如何处理这个错误
- 是否有我不知道的预编译libboost 1.69
我想我发现了问题:
当我尝试构建boost时,我尝试构建所有的boost。我玩了一段时间,找到了以下调用b2的参数:
./b2 --prefix=~/boostForBBB/
--without-context
--without-coroutine
--without-fiber
--without-python
--address-model=32
--stagedir=~/boostForBBBstage-arm-gnueabihf-g++/
-j3 #here you should obviously write how many cores you want to build on
-toolset=arm-linux-gnueabihf-g++
-threading=multi
这帮我搞定了。不过我很高兴听到为什么。