2014-06-29 46 views
3

我剛剛在Centos上安裝了gcc 4.8.2(我正在使用devtoolset-2)。我使用線程編寫了一個非常簡單的程序。它編譯罰款,但執行時崩潰?Linux上的gcc 4.8.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,它工作正常。

+4

嘗試添加命令行選項'-pthread' - 當然還有'-Wall'。 – nosid

+0

非常感謝你,我不知道在Linux上你還需要使用pthread和線程嗎?非常感謝你。 – user18490

+1

'main()'將返回'int'。 – alk

回答