|
I don't know if this mailing list is for support, but it's the only place I could find where I can contact people who know about MinGW.
I am getting an error when running g++.exe. The error is "The program can't start because libgmp-10.dll is missing from your computer. Try reinstalling the program to fix this problem.". I have libgmp-10.dll in the bin folder, yet it still is getting that error. Any idea? Thanks! ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
On 2012-04-06 17:23Z, Marcus Szanto wrote:
> > I am getting an error when running g++.exe. The error is "The program > can't start because libgmp-10.dll is missing from your computer. Try > reinstalling the program to fix this problem.". > I have libgmp-10.dll in the bin folder, yet it still is getting that > error. Any idea? Is the compiler's bin/ directory on the PATH? ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
In reply to this post by Marcus Szanto
On Fri, Apr 6, 2012 at 1:23 PM, Marcus Szanto <[hidden email]> wrote:
> I don't know if this mailing list is for support, but it's the only place I Yes, this is the correct mailing list for MinGW support. > could find where I can contact people who know about MinGW. > I am getting an error when running g++.exe. The error is "The program can't > start because libgmp-10.dll is missing from your computer. Try reinstalling > the program to fix this problem.". Are you using MSYS or cmd.exe? > I have libgmp-10.dll in the bin folder, yet it still is getting that error. > Any idea? Is g++ in the same bin folder as libgmp-10.dll? How is your PATH constructed, are you sure g++ is being found in the expected bin directory? -- Earnie -- https://sites.google.com/site/earnieboyd ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
In reply to this post by Greg Chicares
On Fri, Apr 6, 2012 at 6:47 PM, Greg Chicares <[hidden email]> wrote:
> On 2012-04-06 17:23Z, Marcus Szanto wrote: >> >> I am getting an error when running g++.exe. The error is "The program >> can't start because libgmp-10.dll is missing from your computer. Try >> reinstalling the program to fix this problem.". >> I have libgmp-10.dll in the bin folder, yet it still is getting that >> error. Any idea? > > Is the compiler's bin/ directory on the PATH? It doesn't have to be if the .exe and dependent .dll is in the same directory. Windows by default looks in the directory the program is executed from for any dependent startup .dll. -- Earnie -- https://sites.google.com/site/earnieboyd ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
On 2012-04-09 12:15Z, Earnie Boyd wrote:
> On Fri, Apr 6, 2012 at 6:47 PM, Greg Chicares <[hidden email]> wrote: >> On 2012-04-06 17:23Z, Marcus Szanto wrote: >>> >>> I am getting an error when running g++.exe. The error is "The program >>> can't start because libgmp-10.dll is missing from your computer. Try >>> reinstalling the program to fix this problem.". >>> I have libgmp-10.dll in the bin folder, yet it still is getting that >>> error. Any idea? >> >> Is the compiler's bin/ directory on the PATH? > > It doesn't have to be if the .exe and dependent .dll is in the same > directory. Windows by default looks in the directory the program is > executed from for any dependent startup .dll. We expect dlls to be found that way, yet g++ at first appears not to meet that expectation. Having dug into the issue now, I believe I can explain what's going on and suggest a fix. First, to reproduce the issue that the OP reports, I install MinGW gcc afresh, using 'mingw-get-inst-20111118.exe' (the latest), into F:\MinGW-20111118\ . I use CMD.EXE to rule out any MSYS effect, and I do *not* change %PATH%. When I invoke g++ with its full path: C:\tmp>type C:\tmp\hello.cpp #include <iostream> #include <ostream> int main() {std::cout << "Hello, world!" << std::endl;} C:\tmp>F:\MinGW-20111118\bin\g++ C:\tmp\hello.cpp it fails, and a messagebox appears: cc1plus.exe - Unable To Locate Component This application has failed to start because libgmp-10.dll was not found. Re-installing the application may fix this problem. Has g++ failed to find 'libgmp-10.dll' even though both reside in the same bin/ directory? No. The title of the messagebox identifies the program that couldn't find that dll: not g++, but 'cc1plus.exe'. And that program isn't in bin/; it's here: F:\MinGW-20111118\libexec\gcc\mingw32\4.6.1\cc1plus.exe but the dll is in bin/, with g++, the program that *spawned* cc1plus. And the OS's dll search looks in the directory of the program that's running--not of the program that spawned it. If I copy libgmp-10.dll (required by cc1plus.exe) libmpc-2.dll (required by cc1plus.exe) libmpfr-1.dll (required by cc1plus.exe) into F:\MinGW-20111118\libexec\gcc\mingw32\4.6.1\ (where 'cc1plus.exe' resides), and libgcc_s_dw2-1.dll (required by as.exe) libiconv-2.dll (required by as.exe) libintl-8.dll (required by as.exe) into F:\MinGW-20111118\mingw32\bin (where 'as.exe' resides), then the test case above works as originally hoped. (There's another copy of 'as.exe' in bin/, but apparently g++ or cc1plus invokes the one in mingw32/bin/ .) Should that copying be done in the MinGW distribution? Already there are 7.4 MB of copied .exe's in mingw32/bin/, and the six dlls above add up to an extra 1.9 MB; that would make a C++ installation only one percent larger. The benefit is that invoking the compiler driver (by its fully-qualified filename, like 'F:\MinGW-20111118\bin\g++') will just work, with no PATH change required. That's handy if you're switching between different versions, and safer, too, in this case: PATH=F:\MinGW-20111118\bin;%PATH% F:\MinGW-20111118\bin\g++ foo.cpp # ...an unexpected error occurs, so back up one version F:\MinGW-20110802\bin\g++ foo.cpp # ...oops, that uses the newest version's dlls ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
On Fri, Apr 13, 2012 at 6:11 AM, Greg Chicares wrote:
> First, to reproduce the issue that the OP reports, I install MinGW > gcc afresh, using 'mingw-get-inst-20111118.exe' (the latest), into > F:\MinGW-20111118\ . I use CMD.EXE to rule out any MSYS effect, and > I do *not* change %PATH%. When I invoke g++ with its full path: > > C:\tmp>type C:\tmp\hello.cpp > #include <iostream> > #include <ostream> > int main() {std::cout << "Hello, world!" << std::endl;} > C:\tmp>F:\MinGW-20111118\bin\g++ C:\tmp\hello.cpp > > it fails, and a messagebox appears: > cc1plus.exe - Unable To Locate Component > This application has failed to start because libgmp-10.dll was not found. > Re-installing the application may fix this problem. > > Has g++ failed to find 'libgmp-10.dll' even though both reside in > the same bin/ directory? No. The title of the messagebox identifies > the program that couldn't find that dll: not g++, but 'cc1plus.exe'. > And that program isn't in bin/; it's here: > F:\MinGW-20111118\libexec\gcc\mingw32\4.6.1\cc1plus.exe > but the dll is in bin/, with g++, the program that *spawned* cc1plus. > And the OS's dll search looks in the directory of the program that's > running--not of the program that spawned it. > > If I copy > libgmp-10.dll (required by cc1plus.exe) > libmpc-2.dll (required by cc1plus.exe) > libmpfr-1.dll (required by cc1plus.exe) > into F:\MinGW-20111118\libexec\gcc\mingw32\4.6.1\ (where 'cc1plus.exe' > resides), and > libgcc_s_dw2-1.dll (required by as.exe) > libiconv-2.dll (required by as.exe) > libintl-8.dll (required by as.exe) > into F:\MinGW-20111118\mingw32\bin (where 'as.exe' resides), then the > test case above works as originally hoped. (There's another copy of > 'as.exe' in bin/, but apparently g++ or cc1plus invokes the one in > mingw32/bin/ .) > > Should that copying be done in the MinGW distribution? Already there > are 7.4 MB of copied .exe's in mingw32/bin/, and the six dlls above > add up to an extra 1.9 MB; that would make a C++ installation only > one percent larger. The benefit is that invoking the compiler driver > (by its fully-qualified filename, like 'F:\MinGW-20111118\bin\g++') > will just work, with no PATH change required. That's handy if you're > switching between different versions, and safer, too, in this case: > PATH=F:\MinGW-20111118\bin;%PATH% > F:\MinGW-20111118\bin\g++ foo.cpp > # ...an unexpected error occurs, so back up one version > F:\MinGW-20110802\bin\g++ foo.cpp > # ...oops, that uses the newest version's dlls Thanks for the work and follow-up. My opinion is yes, the required DLL should exist in the disparate directories to accommodate the disparate application executables. Once Keith has post-install scripts working for mingw-get we could just do a copy into the appropriate directories. Until then the package should contain a duplicate DLL. -- Earnie -- https://sites.google.com/site/earnieboyd ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
On 13/04/12 14:38, Earnie Boyd wrote:
> Once Keith has post-install scripts working for mingw-get ... I already have them working, for the imminent 0.5 release, (and in the snapshot at https://sourceforge.net/projects/keithmarshall.u/files/). > ... we could just do a copy into the appropriate directories. Or, for those with NTFS, linking may be preferable. Anyone care to specify the lua script to process a list of DLL names, and for each of them link if possible, or copy otherwise, from %MINGW32_SYSROOT%\bin\ to %MINGW32_SYSROOT%\libexec\gcc\mingw32\4.6.1\ ? > Until then the package should contain a duplicate DLL. Is it worth repackaging all of GCC to achieve this, given the imminent availability of the script enabled mingw-get? -- Regards, Keith. ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
On 04/13/2012 03:45 PM, Keith Marshall wrote:
> On 13/04/12 14:38, Earnie Boyd wrote: >> ... we could just do a copy into the appropriate directories. > > Or, for those with NTFS, linking may be preferable. Anyone care to > specify the lua script to process a list of DLL names, and for each of > them link if possible, or copy otherwise, from %MINGW32_SYSROOT%\bin\ to > %MINGW32_SYSROOT%\libexec\gcc\mingw32\4.6.1\ ? This should be done not only at g++ post-install, but every time one of the DLL in the list is upgraded. Would that be possible? >> Until then the package should contain a duplicate DLL. In principle, I do not like the idea of bundling libgmp-10.dll in the g++ package. If a new version of the gmp package is released, the DLL in the g++ package becomes outdated. Maybe the g++.exe driver could be made to update the PATH before using CreateProcess to run cc1plus.exe. Regards, Cesar ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
|
On 14/04/12 23:31, Cesar Strauss wrote:
> On 04/13/2012 03:45 PM, Keith Marshall wrote: >> On 13/04/12 14:38, Earnie Boyd wrote: >>> ... we could just do a copy into the appropriate directories. >> >> Or, for those with NTFS, linking may be preferable. Anyone care to >> specify the lua script to process a list of DLL names, and for each of >> them link if possible, or copy otherwise, from %MINGW32_SYSROOT%\bin\ to >> %MINGW32_SYSROOT%\libexec\gcc\mingw32\4.6.1\ ? > > This should be done not only at g++ post-install, but every time one of > the DLL in the list is upgraded. Would that be possible? You will have four available scripting hooks: pre-remove, post-remove, pre-install, and post-install. The first pair will be run on a remove action, the final pair on an install. Since mingw-get views upgrade as a remove followed by an install, all four will run on each upgrade, (in the order shown); thus yes, this will be possible. >>> Until then the package should contain a duplicate DLL. > > In principle, I do not like the idea of bundling libgmp-10.dll in the > g++ package. If a new version of the gmp package is released, the DLL > in the g++ package becomes outdated. Agreed, this would not be good. > Maybe the g++.exe driver could be made to update the PATH before using > CreateProcess to run cc1plus.exe. Seems reasonable, if you can persuade the GCC maintainers to go along with this, or you want to go back to maintaining local patches. -- Regards, Keith. ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ MinGW-users mailing list [hidden email] This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. _______________________________________________ You may change your MinGW Account Options or unsubscribe at: https://lists.sourceforge.net/lists/listinfo/mingw-users Also: mailto:[hidden email]?subject=unsubscribe |
| Powered by Nabble | Edit this page |
