我试图交叉编译Boost,但最终出现以下错误。
我已完成以下步骤:
使用
编辑的user-config.jamgcc:arm:arm-fslc-linux-gnueabi-g++
./b2 --prefix=install toolset=gcc-arm --user-config=./user-config.jam
./bjam --prefix=install toolset=gcc-arm --user-config=./user-config.jam
但是我最终遇到以下错误:
"arm-fslc-linux-gnueabi-g++" -fPIC -pthread -O3 -finline-functions -Wno-inline -Wall -DBOOST_ALL_DYN_LINK=1 -DBOOST_ALL_NO_LIB=1 -DNDEBUG -I"." -c -o "bin.v2/libs/wave/build/gcc-arm/release/threading-multi/cpplexer/re2clex/aq.o" "libs/wave/src/cpplexer/re2clex/aq.cpp"
...failed gcc.compile.c++ bin.v2/libs/wave/build/gcc-arm/release/threading-multi/cpplexer/re2clex/aq.o...
gcc.compile.c++ bin.v2/libs/wave/build/gcc-arm/release/threading-multi/cpplexer/re2clex/cpp_re.o
libs/wave/src/cpplexer/re2clex/cpp_re.cpp:20:10: fatal error: ctime: No such file or directory
#include <ctime>
^~~~~~~
compilation terminated.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
有很多这样的错误。
答案 0 :(得分:0)
问题出在sysroot。我们还必须通过编译器传递sysroot:
gcc : arm : arm-fslc-linux-gnueabi-g++ -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard --sysroot=/opt/iotgw-sdk-prod/sysroots/armv7at2hf-neon-fslc-linux-gnueabi
注意:空格应为制表符,而不是空格。