linux下编译c++程序遇到 error: ‘thread’ is not a member of ‘std’的错误
原因:因为GCC/G++默认的-std(即C++语言标准)不是C++11,在这里默认的是C++98。
解决:需要显式地开启,即添加-std=c++11参数
g++ client.c -o client 命令后面加上-std=c++11
Linux下undefined reference to ‘pthread_create’问题解决
问题的原因:pthread不是linux下的默认的库,也就是在链接的时候,无法找到phread库中哥函数的入口地址,于是链接会失败。
解决:在gcc编译的时候,附加要加 -lpthread参数即可解决。
试用如下命令即可编译通过
gcc main.c -o test -lpthread