Boost 提高编译和运行Firebreath的效率

Boost 提高编译和运行Firebreath的效率,boost,firebreath,Boost,Firebreath,我今天发现了一只奇怪的萤火虫。我试图编译我的项目,在我的构建目录上执行make。我犯了很多错误。我尝试从头开始运行一个新项目,但出现以下错误: alucard@hell ~/Documentos/sc/build > make [ 1%] Built target FireBreath_Cmake [ 2%] Building CXX object boost/libs/thread/CMakeFiles/boost_thread.dir/src/tss_null.cpp.o In

我今天发现了一只奇怪的萤火虫。我试图编译我的项目,在我的构建目录上执行
make
。我犯了很多错误。我尝试从头开始运行一个新项目,但出现以下错误:

alucard@hell ~/Documentos/sc/build
> make
[  1%] Built target FireBreath_Cmake
[  2%] Building CXX object boost/libs/thread/CMakeFiles/boost_thread.dir/src/tss_null.cpp.o
  In file included from /home/alucard/Documentos/sc/firebreath/src/3rdParty/boost/boost/thread/detail/platform.hpp:17:0,
             from /home/alucard/Documentos/sc/firebreath/src/3rdParty/boost/boost/thread/detail/config.hpp:20,
             from /home/alucard/Documentos/sc/firebreath/src/3rdParty/boost/libs/thread/src/tss_null.cpp:7:
   /home/alucard/Documentos/sc/firebreath/src/3rdParty/boost/boost/config/requires_threads.hpp:29:4: error: #error "Threading support unavaliable: it has been explicitly disabled with BOOST_DISABLE_THREADS"
  In file included from /home/alucard/Documentos/sc/firebreath/src/3rdParty/boost/boost/thread/detail/config.hpp:20:0,
             from /home/alucard/Documentos/sc/firebreath/src/3rdParty/boost/libs/thread/src/tss_null.cpp:7:
    /home/alucard/Documentos/sc/firebreath/src/3rdParty/boost/boost/thread/detail/platform.hpp:67:9: error: #error "Sorry, no boost threads are available for this platform."
make[2]:  [boost/libs/thread/CMakeFiles/boost_thread.dir/src/tss_null.cpp.o] Error 1
make[1]:  [boost/libs/thread/CMakeFiles/boost_thread.dir/all] Error 2
make:  [all] Error 2
我的系统似乎有问题,但如果我尝试以下示例,则不会出现任何错误:

#include <boost/thread.hpp>

int main(int argc, char *argv[]) {
    return 0;
}
#包括
int main(int argc,char*argv[]){
返回0;
}
编译时使用:
g++test.cpp-pthread-lboost\u thread


有什么想法吗?

尝试删除构建目录并重新运行prepmake.sh;考虑到有多少其他人在使用FireBreath时没有出现此问题,我只能猜测这不是真正的FireBreath bug,因此该bug很可能是由于构建/目录中的某个损坏。

为了解决我的问题,我必须做两件事:

  • 已将修补程序应用于我的
    libstdcpp3.hpp
    文件,该文件位于
    src/3rdParty/boost/boost/config/stdlib
  • 删除我的生成目录并重新运行
    prepmake.sh
    再次感谢@taxilian提供了快速而有用的答案