我刚刚在Centos上安装了gcc 4.8.2 (我正在使用devtoolset-2)。我用线程编写了一个非常简单的程序。它编译得很好,但在执行时会崩溃?
#include <thread>
#include <iostream>
void test()
{
std::cout << "test\n";
}
void main()
{
std::thread t(test);
t.join();
return 0;
}我编制的资料如下:
scl enable devtoolset-2 bash
c++ -o test test.cpp -std=c++11我非常惊讶。我一定做错了什么,不使用写libc++等?你知道我怎么能调试这个。谢谢!我在Mac (Maverick)上编译了它,它显然不使用gcc,而且工作得很好。
发布于 2014-06-29 15:29:33
在Linux上,您应该使用命令行选项-pthread与GCC和Clang一起编译和链接。在您的示例中,命令行应该如下所示:
g++ -std=c++11 -Wall -Wextra -pthread test.cpp -o test有关更多信息,请参见以下链接:
https://stackoverflow.com/questions/24477271
复制相似问题