【问题标题】:Is Eclipse Mars CDT support C++11 thread?Eclipse Mars CDT 是否支持 C++11 线程?
【发布时间】:2015-12-24 11:36:50
【问题描述】:

我有以下设置:

  • Eclipse Mars 4.5(内部版本号:20150621-1200)
  • MinGW 201310 与 g++ 4.8.1
  • Windows 10

我按照几篇文章在 Project 属性中添加 std=c++11 并确保 __cplusplus 为 201103L。结果如下:

  • 我可以看到 std::map 编译并运行正常。
  • 如果我 #include ,则没有语法错误。但是 main() 中的线程声明显示错误“无法解析类型线程”。然后我打开位于 c:/MinGW/lib/gcc/mingw32/4.8.1/include/c++/thread 中的线程头文件,由于 _GLIBCXX_HAS_GTHREADS 未定义,似乎整个类都变暗了。如果我在路径和符号中手动定义它,那么线程类是完全定义的。但是线程本身存在更多错误。我错过了什么吗?或者如果 C++11 线程在 eclipse+MinGW 上没有准备好?谢谢!

【问题讨论】:

    标签: eclipse multithreading c++11 mingw


    【解决方案1】:

    要获得对std::thread 的支持,您将需要配备 posix 线程模型支持的 MinGW 构建。

    我不确定是否有具有该功能的“经典”MinGW 构建, 但它适用于 MinGW-w64。

    您可以在number of ways 中安装 MinGW-w64,但“Mingw-builds”链接下的安装程序应该足以让您开始使用(并且可以让您选择所需的 GCC 版本)。

    【讨论】:

    • 谢谢。我要回到 Visual Studio :)
    猜你喜欢
    • 1970-01-01
    • 2014-04-06
    • 2015-05-11
    • 2014-07-23
    • 1970-01-01
    • 1970-01-01
    • 2018-10-17
    • 2013-10-15
    • 2023-03-08
    相关资源
    最近更新 更多