libgmp-10.dll 丢失
Posted
技术标签:
【中文标题】libgmp-10.dll 丢失【英文标题】:libgmp-10.dll is missing 【发布时间】:2011-10-20 14:01:32 【问题描述】:我最近在我的 64 位 Windows 7 计算机上安装了 MinGW,当我尝试编译最基本的 c++ 程序时,例如
#include<iostream>
using namespace std;
int main()
cout << "Hello World" << endl;
return 0;
我收到“程序无法启动,因为您的计算机缺少 libgmp-10.dll”的错误消息。
【问题讨论】:
【参考方案1】:您是否尝试在Settings->System Properties->Environment Variables
中添加C:\MinGW\bin
作为系统变量Path
(不是PATH
)?
我在这个页面上看到了这个解决方案:Missing libgmp-10.dll
【讨论】:
设置路径后重启cmake-gui
很重要。如果不重新启动,它对我不起作用。
使用 cmake-gui,除了重启,您可能还需要清空 Build 文件夹的内容才能进行修复。
删除 CMake 缓存(文件菜单/删除缓存)似乎也可以解决问题,而不必删除整个二进制目录。【参考方案2】:
如果你在你的安装目录下没有找到这个文件,然后去网站【点击here】下载文件,然后解压到你的安装目录。享受吧:-)
【讨论】:
【参考方案3】:转到mingw download page 并浏览以下目录:
MinGW / Base / gmp / gmp-5.0.1-1
目前您最终获得以下链接:http://sourceforge.net/projects/mingw/files/MinGW/Base/gmp/gmp-5.0.1-1/libgmp-5.0.1-1-mingw32-dll-10.tar.lzma/download 它包含所需的文件。
我知道有安装 mingw gcc 的自动化方法,但是当使用单个 mingw 包时,gmp
是强制性下载之一。
【讨论】:
我刚刚建立了一个全新的 MinGW 安装并且已经安装了gmp
(gmp-dev, gmp-doc, gmp-lic, libgmp),但我仍然有这个问题。
文件下载后放在哪里?
zip 包的根目录应该放在你的 mingw 文件系统的根目录下。【参考方案4】:
添加
c:/MinGW/bin 到路径
并重新启动 CMake-gui
为我工作
【讨论】:
您可以将此添加为评论。【参考方案5】:我在启动 CodeBlocks 然后单击我的项目时遇到了这个问题。项目笔记出现后我按OK后出现错误:
“系统错误:程序无法启动,因为您的计算机中缺少 libgmp-10.dll。 请重新安装应用程序以解决此问题。”
我按了好几次,然后能够进行正常的编译、链接等,但是每次我启动 C::B 并进入项目时都会出现该错误。然后我注意到 LLVM Clang 编译器是我在编译器设置中的默认编译器,尽管 GCC 被设置为特定于我正在处理的项目的编译器。
解决方案是在编译器设置中将编译器设置为 GCC (mingw),并将其设置为默认编译器。之后,每次我启动项目时都会停止弹出此系统错误。
我发布此答案的原因是因为它回答了 OP 的问题,而其他有相同问题的人可能对这种恼怒有类似的原因,而我在这件事上的个人经验可能对这些人有用。
【讨论】:
当我使用几个编译器时确实是一个问题。在打开项目之前,我需要更改默认编译器并重新启动代码块【参考方案6】:注意 - 从路径中删除内容可能会危及您的系统!
有趣的是,您不仅需要将 MinGW bin 添加到您的路径中,还需要确保某些东西不在您的路径上*。在我的情况下,我将整个路径变量保存为备份,从我的路径中删除了除 MinGW 和 CMake 之外的所有非系统内容,然后离开:
C:\MinGW\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files (x86)\CMake\bin
您应该使用您的系统路径中的适当元素。
我首先尝试使用启动 CMake 的批处理作业来执行此操作,但似乎 CMake GUI 正在返回并获取系统“路径”变量,而不是我打印的命令提示符“路径”变量在启动 CMake 之前已确认如上所列。
顺便说一句,我在启动之前备份了整个 Windows VM!
* 例如:各种引用,包括known issues,都提到了sh.exe。我从我的客户那里继承了这个虚拟机并进一步破解了它,所以我更容易为我的交叉编译任务使用干净的路径并在之后返回......
【讨论】:
【参考方案7】:如果您没有修改全局路径的权限,您也可以更改您的 cmd shell 的活动目录。
怎么做(在 cmd shell 中):
C:\> cd C:\MINGW\bin
C:\MINGW\bin> gpp.exe C:\Users\James\Desktop\Program.cpp
它是如何不起作用的:
C:\>C:\MINGW\bin\gpp.exe C:\Users\James\Desktop\Program.cpp
注意:您必须将“C:\Users\James\Desktop\Programm.cpp”更改为程序所在的位置
它是如何工作的:windows 在同一目录中查找所需的 DLL,如果在同一目录中找不到它,它将在 PATH 变量中查找(因此默认情况下它将搜索 system32),如果您添加任何缺少的 DLL到您运行它的目录,Windows 会查找并使用它们(甚至在它查找 PATH 之前)。
【讨论】:
【参考方案8】:解决缺少驱动程序文件问题的一个非常简单的方法是选择并复制 C:\MinGW\Bin 中的所有 dll 文件并粘贴它们进入您的 C:\MyPrograms 或您创建的 c++ (.cpp) 文件所在的文件夹。
【讨论】:
【参考方案9】:在刚刚使用 mingw-get-setup.exe v0.6.2beta-20131004-1 安装程序安装的 MinGW 中。即使在安装过程中我选择了 gcc 包,安装程序也没有包含“mingw32-gmp”包,其中包括 libgmp-10.dll。我不得不重新运行安装程序,选择“重新安装”选项,然后手动选择“mingw32-gmp dev”包。
【讨论】:
如果您有新问题,请点击 按钮提出问题。如果有助于提供上下文,请包含指向此问题的链接。 - From Review @BDL 我不认为这是一个新问题。这似乎是对 mdrissel 如何为他或她自己解决问题的描述。【参考方案10】:只需在 google 上搜索 dll 文件并下载即可。然后粘贴到该路径下的文件夹中
C:\MinGW\libexec\gcc\mingw32\9.2.0
【讨论】:
以上是关于libgmp-10.dll 丢失的主要内容,如果未能解决你的问题,请参考以下文章