我试图用我的覆盆子pi上的c ++ 11构建1.56 boost库。大多数库正在构建正确,但boost atomic会生成以下错误:
构建Boost C ++库。
Component configuration: - atomic : building - chrono : not building - container : not building - context : not building - coroutine : not building - date_time : not building - exception : not building - filesystem : not building - graph : not building - graph_parallel : not building - iostreams : not building - locale : not building - log : not building - math : not building - mpi : not building - program_options : not building - python : not building - random : not building - regex : not building - serialization : not building - signals : not building - system : not building - test : not building - thread : not building - timer : not building - wave : not building ...found 129 targets... ...updating 8 targets... gcc.compile.c++ bin.v2/libs/atomic/build/gcc-4.8/release/threading-multi/lockpool.o g++: error: unrecognized command line option ‘-std=cxx11’ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -fPIC -std=cxx11 -DBOOST_ALL_NO_LIB=1 -DBOOST_ATOMIC_DYN_LINK=1 -DBOOST_ATOMIC_SOURCE -DNDEBUG -I"." -c -o "bin.v2/libs/atomic/build/gcc-4.8/release/threading-multi/lockpool.o"
“库/原子/ SRC / lockpool.cpp”
...failed gcc.compile.c++ bin.v2/libs/atomic/build/gcc-4.8/release/threading-multi/lockpool.o... ...skipped <pbin.v2/libs/atomic/build/gcc-4.8/release/threading-multi>libboost_atomic.so.1.56.0
缺乏 lockpool.o ... ...因缺少libboost_atomic.so.1.56.0而跳过了libboost_atomic.so.1.56.0 ... ...因缺少libboost_atomic.so.1.56.0而跳过了libboost_atomic.so ... gcc.compile.c ++ bin.v2 / libs / atomic / build / gcc-4.8 / release / link-static / threading-multi / lockpool.o g ++:错误:无法识别的命令行选项'-std = cxx11'
"g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -std=cxx11 -DBOOST_ALL_NO_LIB=1 -DBOOST_ATOMIC_SOURCE -DBOOST_ATOMIC_STATIC_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/atomic/build/gcc-4.8/release/link-static/threading-multi/lockpool.o"
“库/原子/ SRC / lockpool.cpp”
...failed gcc.compile.c++ bin.v2/libs/atomic/build/gcc-4.8/release/link-static/threading-multi/lockpool.o... ...skipped <pbin.v2/libs/atomic/build/gcc-4.8/release/link-static/threading-multi>libboost_atomic.a(clean)
缺乏 lockpool.o ... ...跳过了libboost_atomic.a 缺乏 lockpool.o ... ...因缺少libboost_atomic.a而跳过了libboost_atomic.a ... ...未能更新2个目标...... ...跳过6个目标...
我做了:
./bootstrap --with-libraries=atomic
./b2 cxxflags="-std=cxx11"
任何人都知道我能做什么?
答案 0 :(得分:2)
正确的标记是-std=c++11
,而不是-std=cxx11
。只需运行以下命令:
./b2 cxxflags="-std=c++11"
答案 1 :(得分:0)