错误:BOOST禁用线程
error : BOOST DISABLE THREADS
我的boost库有一些问题。我使用的是freebsd,并使用ports安装了我的boost。Boost版本是:1.45,我使用g++47作为编译器。我也从来没有定义BOOST禁用线程在那里:/usr/local/include/BOOST/config/user.hpp .也正是我的错误是:
/usr/local/include/boost/config/requires_threads.hpp:29:4: error: #error "Threading support unavaliable: it has been explicitly disabled with BOOST_DISABLE_THREADS"
显式但在哪里??还有我的编译命令;
g++47 -O3 -Wall -std=c++0x -I. -Iinclude -I../include -I/usr/local/include -c -o Application.o src/Application.cpp
谢谢
实验版GCC 4.7禁用Boost.Threads。参见:https://svn.boost.org/trac/boost/ticket/6165
Edit:应该注意的是,在GCC 4.7的发布版本中,Boost高于1.48 (Boost_1_48_0仍然不能工作),线程再次工作。
参见Joachim提到的6165票:
为了定义"线程"支持,
- GCC <= 4.6定义了
_GLIBCXX__PTHREADS
- ,而GCC>= 4.7定义了
_GLIBCXX_HAS_GTHREADS
.
另一个问题也可以阻止Boost与现代编译器的工作是票证6940 (TIME_UTC
在C11中有一个特殊的意义,因此Boost>= 1.50使用TIME_UTC_
代替)
相关文章:
- C++Boost Asio Pool线程,带有lambda函数和传递引用变量
- boost::文件系统::recursive_directory_iterator多线程安全
- 将更高的优先级设置为 boost::asio 线程处理进程
- 如何正确取消析构函数中的 Boost deadline_timer(在多线程环境中)?
- boost信号和插槽在不同的线程中不工作(使用boost::asio::io_service)
- BOOST线程:线程还是进程
- C++boost,等待来自不同线程的varinit
- 如何解决传递给boost线程的函数中的歧义
- 调用boost.asio的异步函数时,线程是什么时候创建的
- cpp 为什么 boost::线程内部的循环不遍历所有值并且推送相同的值?
- 如何使用boost.thread运行多个接收器,每个线程应该分配给每个接收器?
- 使用Boost将单线线程转换为多线程
- C 带有两个线程的boost async_read vs
- 重写多线程事件驱动的C 程序以使用单线程Boost :: Asio
- 多个boost io_service在单独的线程上用于多个网卡
- 在具有许多内核的计算机上,使用 Boost ASIO 只能使用 1 个线程
- 我们是否需要每个线程多个io_service用于具有单个接受器的线程 boost::asio 服务器
- 如何实现动态线程 Boost::Barrier
- 线程+ boost::函数中的getline访问冲突
- 使用c++线程/ boost线程的有效方法