Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

error: 'std::this_thread' has not been declared

I try to use std::this_thread::sleep_for() function but got the error
error: 'std::this_thread' has not been declared.
The flag _GLIBCXX_USE_NANOSLEEP included.
What else is needed to force it to work?
MinGW ==> gcc version 4.7.2 (GCC)

SSCCE:

#include<thread>

int main() {
  std::this_thread::sleep_for(std::chrono::seconds(3));
}

command line:

g++ -D_GLIBCXX_USE_NANOSLEEP -std=gnu++0x ssce.cpp -o ssce.exe

result of compilation:

ssce.cpp: In function 'int main()':
ssce.cpp:4:8: error: 'std::this_thread' has not been declared
like image 615
OlegG Avatar asked Dec 06 '12 10:12

OlegG


1 Answers

Use MinGW with POSIX threads, Luke.

http://sourceforge.net/projects/mingwbuilds/

like image 134
Anatoly Kalin Avatar answered Sep 19 '22 13:09

Anatoly Kalin