Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
305 views
in Technique[技术] by (71.8m points)

c++ - Getting std::thread/mutex to work under Win7 with mingw and g++ 4.7.2


Greetings,

I've recently moved out of my unix shelter to test a supposedly cross-platform networking library only to discover that mingw doesn't like to be fed c++11 stuff.

I presume that I'm missing the required headers since Win7 doesn't come packed with c++11 support.

It compiles just fine with VS2012
but g++ refuses to.

error: 'thread' in namespace 'std' does not name a type
error: 'mutex' in namespace 'std' does not name a type

The question is:

How do I get a copy of c++11 headers/libs i.e. < thread > without using the ones provided by VS2012 installation.

P.S. #1 I tried mingw-get update but it still wont find < thread >
P.S. #2 I am also using -std=c++11


Sincerely,
Chris.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

These MinGW-w64 builds support C++11 threads,atomic operations etc.

  1. MinGW-builds are now integrated into the MinGW-w64 project
  2. MinGW-builds (project is old and will not be updated, see point above)
  3. MinGW-w64 rubenvb 64-bit and 32-bit builds

Note that MinGW-w64 is not 64-bit only, but does support it, unlike the old MinGW(.org) which is missing quite a lot of the new Vista+ APIs, and of course 64-bit support.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...