GCC std::thread not found in namespace std

前端 未结 5 1533
梦如初夏
梦如初夏 2020-12-06 16:43

I am using GCC 4.5.0 with the Eclipse IDE (if that matters) on Windows via MinGW.

I\'m using the -std=c++0x flag.

I find that _GLIBCXX_HAS

相关标签:
5条回答
  • 2020-12-06 17:18

    The native Windows builds of gcc do not support the new C++0x/C++11 thread library.

    The (commercial) Just::Thread library adds support to the TDM port of gcc 4.5.2 for Windows, as well as MSVC.

    0 讨论(0)
  • 2020-12-06 17:20

    What does one do to get C++0x threading support with GCC?

    Use Boost? Seriously http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html claims threads aren't complete even in mainline head so it isn't going to be in any current release.

    0 讨论(0)
  • 2020-12-06 17:20

    Use this builts of mingw: http://code.google.com/p/mingw-builds/downloads/list

    0 讨论(0)
  • 2020-12-06 17:22

    Works fine on Linux (g++ -std=c++0x -lpthread with no additional defines).

    However, this thread on Cygwin mailing list suggests that, at least as of 4.4, _GLIBCXX_HAS_GTHREADS was disabled by an autoconf test when building libstdc++ because pthread implementation of cygwin is missing pthread_mutex_timedlock. Perhaps MinGW has the same problem.

    Also, this thread on comp.lang.c++.moderated says the same thing. Not supported by the library.

    0 讨论(0)
  • 2020-12-06 17:31

    There is already a lightweight header-only library that implements std::thread and sync primitives in pure win32 API: https://github.com/meganz/mingw-std-threads

    IT should work with any version of MinGW that has proper C++11 support.

    0 讨论(0)
提交回复
热议问题