我决定学习如何编写多个线程。我正在运行最初安装了gcc 4.6的Ubuntu 12.04。我安装了gcc版本5并切换到它。所以当我做g ++ --version时,它表明我使用的是5.2.1版。我写了一个程序来启动两个线程,并试图用g ++ -std = c ++ 11 thread.cpp编译它,但我得到了:
/tmp/ccAP5xoU.o:thread.cpp:function _ZNSt6threadC1IRFvvEJEEEOT_DpOT0_: error: undefined reference to 'pthread_create'
collect2:错误:ld返回1退出状态
以下是该计划:
#include <iostream>
#include <thread>
void hello() {
std::cout << "Hello Strings!\n";
}
int main()
{
std::thread t(hello);
t.join();
}
可能是什么问题?