libgmp-10.dll is missing
Asked Answered
V

10

58

I recently installed MinGW on my 64-bit Windows 7 computer and when I attempt to compile the most basic of c++ programs, for example

#include<iostream>

using namespace std;

int main()
{
    cout << "Hello World" << endl;
    return 0;
}

I get the error that "The program can't start because libgmp-10.dll is missing from your computer."

Volitive answered 5/8, 2011 at 5:43 Comment(0)
S
87

Have you tried adding C:\MinGW\bin as a System variable Path (not PATH) in Settings->System Properties->Environment Variables?

I saw this solution on this page: Missing libgmp-10.dll

Saloop answered 5/8, 2011 at 6:2 Comment(3)
restarting cmake-gui after setting path is important. It didn't work for me without restart.Jalousie
With cmake-gui, apart from restarting, you may also need to empty the content of the Build folder for the fix to work.Stinnett
Deleting the CMake cache (File menu/Delete Cache) seems to do the trick also without having to delete the entire binary directory.Fumikofumitory
I
10

Go to the mingw download page and browse the following directories:

MinGW / Base / gmp / gmp-5.0.1-1

Currently you end up with the following link:
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
and it contains the needed file.

I know there are automated methods for installing mingw gcc, but when one uses single mingw packages, then gmp is one of obligatory downloads.

Internalize answered 5/10, 2012 at 14:42 Comment(3)
I just built up a fresh MinGW install and already have gmp (gmp-dev, gmp-doc, gmp-lic, libgmp) installed, but I still have this problem.Graybeard
Where do I put the file after I download it?Avraham
Root of the zip package should go to the root of your mingw file system.Internalize
L
5

added

c:/MinGW/bin to PATH

and restarted CMake-gui

worked for me

Laruelarum answered 20/5, 2013 at 12:36 Comment(1)
You can add this as comment.Intrench
S
3

I came upon this question when I started CodeBlocks and then clicked on my project. After the project notes appeared and I pressed OK, the error appeared:

"System Error: The program can't start because libgmp-10.dll is missing from your computer. Please reinstall the application to fix this problem."

I presse OK a bunch of times and then was able to do normal compile, link, etc. but that error showed up everytime I started C::B and went to the project. Then I noticed that the LLVM Clang compiler was my default compiler in the compiler settings, though GCC was set as the compiler specific to the project I was working on.

The solution was to set the compiler in the compiler settings to GCC (mingw) and also set it as the default compiler. After that this system error stopped popping up every time I started the project.

The reason I posted this answer is because it answers the OP's question and other people with the same question may have a similar reason for this irritation, and my personal experience in this matter may prove useful to those people.

Squalor answered 16/8, 2014 at 13:40 Comment(1)
It's really a problem when I use several compilers. I need change the default compiler and restart codeblocks before I open a projectSkirting
O
2

If you did not find this file in your installation directory, and then went to the site [Click here] to download the file, and then extract it to your installation directory.enjoy:-)

Oler answered 5/10, 2012 at 9:1 Comment(0)
N
1

Caution - removing stuff from your path can compromise your system!

Interestingly, you not only need to add the MinGW bin to your Path, but also you need to make sure that certain things are not on your path*. In my case, I saved my entire path variable as a backup, deleted everything non-system from my path except for MinGW and CMake, leaving:

C:\MinGW\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files (x86)\CMake\bin

You should use the appropriate elements from your system path.

I first tried to do this with a batch job that launched CMake, but it seems that the CMake GUI was reaching back and grabbing the System 'Path' variable instead of the command prompt 'Path' variable, which I had printed and confirmed was as listed above before launching CMake.

Incidentally, I backed up the entire Windows VM before starting!

* For instance: various references, including known issues, mention sh.exe. I inherited this VM from my client and hacked it up further, so it's easier for me to use a clean path for my cross-compiling task and return afterward...

Nguyen answered 12/4, 2016 at 16:58 Comment(0)
L
0

In just installed MinGW using the mingw-get-setup.exe v0.6.2beta-20131004-1 installer. Even though during the install I selected the gcc package, the installer didn't include the "mingw32-gmp" package, which includes libgmp-10.dll. I had to rerun the installer, chose the "Reinstall" option, and manually select the "mingw32-gmp dev" package.

Letitialetizia answered 6/4, 2018 at 13:59 Comment(2)
If you have a new question, please ask it by clicking the Ask Question button. Include a link to this question if it helps provide context. - From ReviewDacha
@Dacha I don't think this is a new question. It seems to be a description of how mdrissel solved the issue for his or herself.Dela
A
-1

If you don't have the permission modifying your global path, you can also change the active directory of your cmd shell.

How to do it (in the cmd shell):

C:\> cd C:\MINGW\bin
C:\MINGW\bin> gpp.exe C:\Users\James\Desktop\Program.cpp

How it doesn't work:

C:\>C:\MINGW\bin\gpp.exe C:\Users\James\Desktop\Program.cpp

Note: you have to change "C:\Users\James\Desktop\Programm.cpp" to wherever your program lays

How it works: windows looks for needed DLLs while in the same directory and if it can't find it there it'll look in the PATH variables (so it will search system32 by default), if you add any missing DLLs to the directory from where you run it, windows looks and uses them (even before it looks in the PATH).

Anatola answered 26/6, 2017 at 9:16 Comment(0)
S
-1

A very simple fix to this problem of having missing driver file/s is to select and copy all the dll files from C:\MinGW\Bin and paste them into your C:\MyPrograms or whereever else your folder for created c++ (.cpp) files are being located.

Suint answered 2/7, 2017 at 16:11 Comment(0)
A
-1

Just search google for the dll file and download it. Then paste it into the folder in this path

C:\MinGW\libexec\gcc\mingw32\9.2.0

Aboulia answered 27/11, 2020 at 19:47 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.