mingw 5 std::this_thread tidak ditentukan

Hai, adakah yang mencoba menggunakan dukungan header mingw w64?

main.cpp: In function 'int main()':
main.cpp:9:10: error: 'std::this_thread' has not been declared
std::this_thread::sleep_for( dura );
      ^

Saya mendapatkan kesalahan di atas dengan mengikuti tes sederhana

#include <iostream>
#include <chrono> 
#include <thread>

int main()
{ 
 std::cout << "Hello waiter" << std::endl;
 std::chrono::milliseconds dura( 2000 );
 std::this_thread::sleep_for( dura );
 std::cout << "Waited 2000 ms\n";
}

Saya ingin menggunakan N3653 dan N3651 terbaru seperti yang ditentukan di sini https://gcc.gnu.org/projects/cxx1y.html dan tentu saja header dukungan threading, menggunakan build seseorang yang ditemukan di sini http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/dongsheng-daily/5.0/ dan c++config.h _GLIBCXX_USE_NANOSLEEP saya tidak ditentukan, ada ide?

[EDIT] Saya menyadari bahwa model utas saya adalah: win32 dan bukan posix. Bagaimana cara mengaktifkan dukungan posix?


person user3453753    schedule 24.02.2015    source sumber
comment
Komentar bukan untuk diskusi panjang; percakapan ini telah dipindahkan ke obrolan.   -  person George Stocker    schedule 26.02.2015


Jawaban (1)


Anda dapat menggunakan alternatif pembaruan untuk i686-w64-mingw-g++ dan menyetelnya ke i686-w64-mingw-g++-posix dari i686-w64-mingw-g++-win32.

Atau Anda bisa menggunakan i686-w64-mingw-g++-posix untuk mengkompilasi. Ada versi lain jadi dalam hal ini Anda akan menggunakan kompiler 64 bit dan menambahkan -posix ke dalamnya.

person haelmic    schedule 21.05.2019