g ++和c ++ 0x规范支持

时间:2010-04-18 22:22:30

标签: c++ gcc g++ c++11

尽管据说g ++中对c ++ 0x新功能的支持处于实验模式,但许多gcc开发人员声称您可以使用代码中的大多数新功能并使程序正常工作。

但是当我尝试编译这个简单的程序时,会导致分段错误。为什么呢?

#include <thread>
#include <iostream>

void my_thread_func()
{
    std::cout<<"hello"<<std::endl;
}

int main()
{
    std::thread t(my_thread_func);
    t.join();
}

g ++ -std = c ++ 0x -Wall -o run main.cc

1 个答案:

答案 0 :(得分:12)

我将可执行文件与pthread库链接起来并且有效!我没有看到任何遗漏的共享库依赖项(ldd),但似乎Linux上的std C ++库实现在内部使用pthread。

g++ thread.cpp -o thread -Wall -std=c++0x -lpthread