std::thread 不是使用 Eclipse Kepler MinGW 的命名空间 std 的成员

2023-12-20

我正在尝试编译一个简单的 C++ 程序,该程序在 eclipse kepler / mingw 4.8.1 和 win32 上使用 std::thread 。我希望在多年的 Windows 开发之后,有一天能将开发转移到 Linux。

#include "test.h"
#include <thread>
#include <algorithm>


int main()
{
    Test::CreateInstance();

    std::thread(
        [&]()
        {
            Test::I()->Output2();
        }
    );

    Test::DestroyInstance();
    return 0;
}

忽略测试的目的(它是一个单例,只会产生一些输出,一旦我让 std::thread 工作,我将对其进行扩展!)

我在 Eclipse 中设置的 g++ 编译器设置是:

-c -fmessage-length=0  -std=c++0x -Wc++0x-compat

我定义的预处理器符号是:

__GXX_EXPERIMENTAL_CXX0X__

构建抱怨 std::thread 不是 std 的成员:

    10:30:13 **** Incremental Build of configuration Debug for project test ****
Info: Internal Builder is used for build
g++ -D__GXX_EXPERIMENTAL_CXX0X__ -O0 -g3 -Wall -c -fmessage-length=0 -std=c++0x -Wc++0x-compat -o main.o "..\\main.cpp" 
..\main.cpp: In function 'int main()':
..\main.cpp:11:2: error: 'thread' is not a member of 'std'
  std::thread(
  ^

有人可以建议我可能缺少什么才能正确编译吗?


普通MinGW不支持std::thread。您将需要使用启用了“posix”线程的 MinGW-w64 工具链(例如 Qt 5 附带的工具链),以便 libstdc++ 公开<thread>, <mutex> and <future>功能。

您可以找到安装程序here http://sourceforge.net/projects/mingwbuilds/,但您也可以尝试仅替换整个mingw工具链根文件夹这些包之一 http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/。你可以选择32位或者64位,记得选择threads-posix如果你想玩std::thread和朋友。除了已有的编译器选项之外,不需要任何特殊的编译器选项。我建议使用-std=c++11如果您不需要 GCC 4.6 兼容性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

std::thread 不是使用 Eclipse Kepler MinGW 的命名空间 std 的成员 的相关文章

随机推荐

  • Obex 推送配置文件的 UUID

    我尝试打开一个套接字来侦听来自非 Android 设备的传入连接 Parcelable uuidExtra device getUuids String t uuidExtra 0 toString t t toUpperCase Log
  • 为什么 System.Random 类不是静态的?

    当您使用System Random类 你必须创建它的一个实例 为什么不是static 因为如果我想要一个 0 到 9 之间的随机数 我可以使用 staticmethod System Random Next int int int ourR
  • SQL 复制设置 - 几乎完成

    我正在尝试在两个 SQL Server 之间设置复制 我几乎已经完成了 但遇到了权限错误 看起来 服务器通过 VPN 连接 发行商 发行商 W2003 SQL 2005 域控制器 订阅服务器 W2008 SQL 2008 不在域上的独立服务
  • C# WebRequest 发送表单数据大小限制

    我正在尝试在 WebRequest 中发送表单数据 该函数工作正常并按预期返回 成功 响应流 但是 如果 data 变量的长度超过 30 000 个字符 我会遇到 HTTP 500 错误 Message The remote server
  • Selenium EventFiringWebDriver 导航事件

    我正在使用 Selenium Web 驱动程序 我想监听浏览器中发生的事件 例如 当页面上的某些 javascript 导致 url 使用以下命令更改时window location 我有一个监听器附加到Navigated我的事件Event
  • Asp.Net Core 5 API Web像WCF一样以流模式上传大文件

    我需要在用 asp net core 5 制作的网络服务器上以流模式 一次一个 上传一个大文件 7GB 配置服务器端 public class Program public static void Main string args Crea
  • 将 XML 数组转换为 XML 时出现奇怪的文本

    我使用这个问题的答案将 XML 数组转换为单个 XML 输出 将 XML 数组输出为纯 XML https stackoverflow com questions 2554671 output array of xml to plain x
  • 为什么这个救援语法有效?

    好的 我正在使用的应用程序有这种方法 并且它可以在生产中使用 我的问题为什么这有效 这是新的 Ruby 语法吗 def edit load elements current user unless current user role adm
  • AWS Elastic Beanstalk 中的自定义 URL

    AWS Elastic Beanstalk 建议使用以下格式的 URL https appname elasticbeanstalk com 但我需要将其更改为我自己的网址 例如https tarta ai 怎么做 Note 我的域使用 A
  • 如何在GDB中像数组一样查看指针?

    假设定义 int a 100 Type print a然后 gdb 会自动将其显示为数组 1 2 3 4 然而 如果a作为参数传递给函数 那么gdb会将其视为普通的int指针 类型print a将显示 int 0x7fffffffdaa0
  • 如何在UI底部的固定位置设置一个按钮?

    我希望一个按钮始终出现在 UI 页脚的固定位置 总是 无论它上面是否有组件 请在您的主布局下选择一个相对布局 将其高度和宽度设置为填充父项 并将其重力设置为底部 然后将任何文本视图或任何您想要的按钮放入其中
  • setup.py - 安装后将模块符号链接到 /usr/bin

    我几乎完成了 python 包的开发 并且还使用 distutils 编写了基本的 setup py usr bin env python author Prahlad Yeri description Small daemon to cr
  • 在外部 JavaScript 文件中使用 KnockoutJS ViewModel

    如何在外部 JS 文件中创建 KO JS ViewModel 然后在 html 文件中使用它 这看起来是一件很简单的事情 但我无法让它工作 也找不到任何关于如何做到这一点的明确信息 如果我忽略了 我会道歉 如果有人能指出我的答案 我会删除它
  • 使用字段数将文件拆分为更小的文件

    我很难将一个大的 50GB csv 文件分解成更小的部分 每行有几千个字段 一些字段是双引号中的字符串 其他字段是整数 小数和布尔值 我想逐行解析文件并按每行中的字段数进行分割 字符串可能包含多个逗号 例如 以及许多空字段 1 30 50
  • Delphi 2007 和 Logitech 网络摄像头驱动程序

    不久前 我遇到了 Delphi 2007 在 Logitech 网络摄像头驱动程序运行时无法运行和调试应用程序的问题 显然 罗技驱动程序会在每个正在运行的进程中插入一个存根 从而弄乱调试器的偏移量 已经一年多了 这仍然是一个问题吗 罗技是否
  • 如何在不调用 java.lang.String 的情况下检查 clojure 中字符串的相等性?

    clojure 有没有办法检查字符串的相等性 即我需要知道它们的内容是否相等 而不是位置 thanks Clojure 中的平等 函数 总是测试值 而不是身份 所以两个字符串是 如果它们有相同的内容 对于大多数 Java 类型 包括 Str
  • 使用 MongoDB 代替 MS SQL Server 的优点和缺点 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我是 NoSQL 世界的新手 正在考虑将 MS Sql Server 数据库替换为 MongoDB 我
  • 如何在 build.gradle 中检索 ADB 的路径

    我尝试通过启动应用程序gradle task task runDebug dependsOn installDebug run task run type Exec commandLine adb shell am start n com
  • 使用附加值扩展枚举

    延长期限的常见做法是什么enum在C语言中 我有enum来自其他包含的内容 并希望用一些值来扩展它们 希望以下示例能够为我想要实现的目标提供直观的信息 include
  • std::thread 不是使用 Eclipse Kepler MinGW 的命名空间 std 的成员

    我正在尝试编译一个简单的 C 程序 该程序在 eclipse kepler mingw 4 8 1 和 win32 上使用 std thread 我希望在多年的 Windows 开发之后 有一天能将开发转移到 Linux include t