2013-05-16 2 views
2

우분투에서 Qt Creator에서 스레드를 작동 시키려고합니다. 나는Qt Creator 2.7.0 (Qt 5.0.2)에서 C++ 11 스레드 지원

QMAKE_CXXFLAGS += -std=c++11 -pthread -lpthread 
CXXFLAGS += -std=c++11 -pthread -lpthread 

설정하지만 여전히 일을 못해 내가 컴파일 할 파일 내가 MyProject를 다음 줄을 추가했다이

#include <iostream> 
#include <thread> 
using namespace std; 

void fun(){ 
} 

int main() 
{ 
    thread th(&fun); 
    cout << "Hello World!" << endl; 
    return 0; 
} 
+0

로 지금 작동? – phyatt

+0

있습니다. 나는 내 질문에 이미 대답했다. – Slazer

답변

5

입니다

terminate called after throwing an instance of ‘std::system_error’ 
    what(): Operation not permitted 

를 작성합니다 .pro 파일

LIBS += -pthread 

그래서 GCC의 설치된 버전 ++ 11 c를해야합니까 이러한 두 줄

QMAKE_CXXFLAGS = -std=c++11 
LIBS += -pthread 
+1

흥미롭게도, 나는 보통 "QMAKE_CXXFLAGS + = -std = C++ 11"이고 그 것이다. –

+2

** 컴파일러 플래그! = 링커 플래그 ** LIBS는 링커에 플래그를 추가하고, QMAKE_CXXFLAGS 또는 CXXFLAGS는 컴파일러에 플래그를 추가한다! – bitek