linux下使用boost的thread编译出错

由于boost库的thread是需要提前编译的,所以提前按照说明文档编译安装好,

我在boost库编译安装好以后按照网上的例子写了一段程序

#include 
#include 
#include 
using namespace std;
volatile bool isRuning = true;
void func1()
{
        static int cnt1 =0;
        while(isRuning)
        {
                cout<<"func1:"<

但是在编译的时候报了错

ubuntu@VM-0-15-ubuntu:~/test$ g++ main.cpp -g -o main -lboost_thread -L/usr/lib
/usr/bin/ld: /tmp/ccFwtON8.o: undefined reference to symbol 'pthread_condattr_setclock@@GLIBC_2.3.3'
//lib/x86_64-linux-gnu/libpthread.so.0: 无法添加符号: DSO missing from command line
collect2: error: ld returned 1 exit status

然后发现原来是boost库的thread使用了pthread库但是这个线程库不是Linux默认的所以需要在编译时加上链接 -lpthread

boost在Linux安装指南:https://www.cnblogs.com/xuyuan77/p/8716003.html

C++交流群:585225803

你可能感兴趣的:(linux下使用boost的thread编译出错)