$sudo apt-get install libboost-thread1.67-dev
首先默认的Debian系统是没有g++的需要安装
$sudo apt-get install g++
#include <iostream>
#include <boost/thread.hpp>
#define len 1000000000L
static void f(unsigned long a, unsigned long b, unsigned long *va)
{
for (*va = 0; a < b; a++)
*va += a;
}
int main()
{
unsigned long va = 0;
boost::thread a(f, 0l, 2* len, &va);
a.join();
std::cout << va << std::endl;
return 0;
}
Debian系统默认也不包含boost_thread
$g++ boost_thread_demo.c -o thread_test_demo
$g++.c:2:10: fatal error: boost/thread.hpp: No such file or directory
#include <boost/thread.hpp>
^~~~~~~~~~~~~~~~~~
那么需要安装boost_thread, 这里我们选择开发包
$ sudo apt-get install libboost-thread1.67-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libboost-atomic1.67-dev libboost-atomic1.67.0 libboost-chrono1.67-dev libboost-chrono1.67.0 libboost-date-time1.67-dev
libboost-date-time1.67.0 libboost-serialization1.67-dev libboost-serialization1.67.0 libboost-system1.67-dev libboost-system1.67.0
libboost-thread1.67.0 libboost1.67-dev
Suggested packages:
libboost1.67-doc libboost-container1.67-dev libboost-context1.67-dev libboost-coroutine1.67-dev libboost-exception1.67-dev
libboost-fiber1.67-dev libboost-filesystem1.67-dev libboost-graph1.67-dev libboost-graph-parallel1.67-dev libboost-iostreams1.67-dev
libboost-locale1.67-dev libboost-log1.67-dev libboost-math1.67-dev libboost-mpi1.67-dev libboost-mpi-python1.67-dev libboost-numpy1.67-dev
libboost-program-options1.67-dev libboost-python1.67-dev libboost-random1.67-dev libboost-regex1.67-dev libboost-signals1.67-dev
libboost-stacktrace1.67-dev libboost-test1.67-dev libboost-timer1.67-dev libboost-type-erasure1.67-dev libboost-wave1.67-dev
libboost1.67-tools-dev libmpfrc++-dev libntl-dev
The following NEW packages will be installed:
libboost-atomic1.67-dev libboost-atomic1.67.0 libboost-chrono1.67-dev libboost-chrono1.67.0 libboost-date-time1.67-dev
libboost-date-time1.67.0 libboost-serialization1.67-dev libboost-serialization1.67.0 libboost-system1.67-dev libboost-system1.67.0
libboost-thread1.67-dev libboost-thread1.67.0 libboost1.67-dev
0 upgraded, 13 newly installed, 0 to remove and 3 not upgraded.
Need to get 11.5 MB of archives.
After this operation, 159 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
编译时加上依赖的库
g++ boost_thread_demo.c -o thread_test_demo -lboost_thread -lboost_system -lpthread