【问题标题】:cc1.exe System Error - libwinpthread-1.dll missing - But it isn'tcc1.exe 系统错误 - libwinpthread-1.dll 丢失 - 但它不是
【发布时间】:2015-03-06 20:43:22
【问题描述】:

我最近从 Sourceforge 下载了 MinGW-w64 到我的外部硬盘驱动器上,所有文件都驻留在其中:

E:\mingw-w64\x86_64-4.9.2-posix-seh-rt_v3-rev1\mingw64\bin

当我尝试在 Windows 8.1 上使用 gcc 编译我的第一个“Hello World”程序时,我收到一个 cc1.exe 系统错误,告诉我

程序无法启动,因为缺少 libwinpthread-1.dll。 尝试重新安装程序以解决问题。

然而,libwinpthread-1.dll(全部 54,784 字节)与 gcc.exe 位于同一个目录中。我真的需要重新安装所有东西,还是这里出了什么问题?

【问题讨论】:

  • 欢迎来到 Stack Overflow。如果您一次提出一个具体问题并提供更多详细信息,您将获得更好的答案。
  • 尝试将“E:\mingw-w64\x86_64-4.9.2-posix-seh-rt_v3-rev1\mingw64\bin”添加到您的路径
  • 替代方法是CD到g++.exe所在的bin目录

标签: c++ c gcc mingw


【解决方案1】:

我知道这篇文章已有两年多了,但我最近在使用 CMake 时遇到了同样的问题。

我通过将 MinGW 添加到“路径”环境变量来修复它: 我正在使用 Windows 10 家庭版。

  1. “Windows 键”+ 暂停/中断
  2. 左侧有“高级系统设置”
  3. 在此窗口的底部有一个名为“环境变量”的按钮
  4. 点击名称“路径”
  5. 点击系统变量下的“编辑”
  6. 在那里添加您的 MinGW 目录。对我来说那是C:\MinGW\bin

我希望我能帮上忙。如果不是你,也许是其他人。

【讨论】:

  • 澄清一下,您点击的“路径”也应该在“系统变量”下(而不是在“___的用户变量”下)。
【解决方案2】:

我认为最好静态链接所需的库。这意味着可执行文件可以在任何地方运行,而无需寻找它们。为此,请在链接器中使用 -static 标志。

例如:

g++.exe -o ......\bin\connect.exe obj\Release\src\connect.o -static

【讨论】:

  • 这到底有什么帮助?这里的问题不就是 gcc 本身没有用静态 libwinpthread 构建的吗?您是否建议他需要做的就是从头开始重新编译 gcc,在使用他构建的新 gcc 重新编译自己的代码之前将 gcc 静态链接到 libwinpthread?
  • @crobar 这已经为我解决了,因为我是我的代码的开发人员。添加 -static 允许我发布包含所有依赖项的工具。
【解决方案3】:

我使用以下方法修复:

pacman -Fsy "libwinpthread-1.dll"
pacman -S mingw64/mingw-w64-x86_64-libwinpthread-git

【讨论】:

    【解决方案4】:

    你可以关注这个。

    在代码块中转到 settings > compiler 并标记我在图片中显示的这些

    希望它会起作用。

    【讨论】:

    • 我注意到检查Static linking [-static] 而不明确地检查libgcclibstdc++ 仍然有效。另外,我读过 C++ 17 ISO 标准目前是一个被广泛接受的标准。您的屏幕截图很好地提醒我启用该选项,谢谢。
    【解决方案5】:

    dll文件已经在应用程序文件中,但您需要做的是复制dll文件并将其粘贴到windows system32中

    【讨论】:

      【解决方案6】:

      如果您缺少libwinpthread-1.dll,则意味着您缺少整个 MinGW 工具链,并且您在使用其他 DLL 时会遇到更多问题。不要添加这个单一的 DLL,而是安装整个 MinGW 工具链以避免进一步的问题。

      1. 安装MSYS2x64
      2. 打开MSYS2 MinGW x64命令提示符
      3. 运行 pacman -S base-devel mingw-w64-x86_64-toolchain 安装 GCC 工具链(所有组件)
      4. c:\msys64\mingw64\bin 添加到系统路径

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-07-12
        • 2016-09-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-06
        • 1970-01-01
        相关资源
        最近更新 更多