gpt4 book ai didi

c++ - 带有 boost thread 1.51 的程序无法构建

转载 作者:行者123 更新时间:2023-11-28 03:32:31 25 4
gpt4 key购买 nike

我正在尝试使用最新版本的 boost 线程编译程序。我正在使用

gcc 版本 4.1.2 20080704(红帽 4.1.2-52)

对于 1.50,我遇到了一个问题,即无法找到对 boost::thread::~thrad() 的引用。所以我更新到新的我得到了以下内容

      /usr/local/include/boost/thread/detail/thread.hpp:65: error: expected ';' before 'thread_data'
/usr/local/include/boost/thread/detail/thread.hpp:68: error: expected `;' before 'thread_data'
/usr/local/include/boost/thread/detail/thread.hpp:88: error: expected ';' before 'thread_data'
/usr/local/include/boost/thread/detail/thread.hpp:91: error: expected `;' before 'void'
/usr/local/include/boost/thread/detail/thread.hpp:105: error: expected ';' before 'thread_data'
/usr/local/include/boost/thread/detail/thread.hpp:108: error: expected `;' before 'void'
/usr/local/include/boost/thread/detail/thread.hpp:121: error: expected ';' before 'private'
/usr/local/include/boost/thread/detail/thread.hpp:153: error: expected primary-expression before ')' token
/usr/local/include/boost/thread/detail/thread.hpp:153: error: there are no arguments to 'BOOST_THREAD_RV_REF' that depend on a template parameter, so a declaration of 'BOOST_THREAD_RV_REF' must be available
/usr/local/include/boost/thread/detail/thread.hpp:153: error: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/usr/local/include/boost/thread/detail/thread.hpp:153: error: expected `)' before 'f'
/usr/local/include/boost/thread/detail/thread.hpp:153: error: invalid in-class initialization of static data member of non-integral type 'boost::detail::thread_data_ptr'
/usr/local/include/boost/thread/detail/thread.hpp:153: confused by earlier errors, bailing out

我不知道为什么要这样做。有什么解决方法吗?

最佳答案

我在 OSX 上使用 g++ 4.2.1 时遇到了同样的问题,但我不认为它本身是一个编译器问题。

我之前通过调用 b2 安装将 boost 库和 header 安装到 /usr/local/lib/usr/local/include。这适用于新安装,但不能正确覆盖以前的 boost 安装(我有 1.49)。我所要做的就是将我的构建指向我正在使用的 boost 构建目录,或者删除 /usr/local/include/boost 并再次运行 b2 install。我第一次运行 b2 install 它只复制了速度很快的库,第二次它花费了更长的时间并复制了所有头文件。

关于c++ - 带有 boost thread 1.51 的程序无法构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12071329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com