我正在使用MinGW,每当我尝试从命令行运行g ++时,我都会遇到弹出错误:
此应用程序无法启动,因为找不到libgmp-10.dll。重新安装应用程序可能会解决此问题。
我检查过,我发现MinGW/bin
内部实际上有一个名为libgmp-10.dll的文件。起初没有,但我下载了文件并将其放在那里。 MinGW/bin
一定不能放在正确的位置,因为它仍然说无法找到该文件。
那么我在哪里放置libgmp-10.dll
?
更新:这是我的PATH
环境变量:
C:\MinGW\bin:
/c/Program Files/Vim/vim74:
/c/Program Files/Haskell/bin:
/c/Program Files/Haskell Platform/2013.2.0.0/lib/extralibs/bin:
/c/Program Files/Haskell Platform/2013.2.0.0/bin:
/c/WINDOWS/system32:
/c/WINDOWS:
/c/WINDOWS/System32/Wbem:
/c/Program Files/QuickTime/QTSystem/:
/c/Program Files/TortoiseHg/:
/c/Program Files/Haskell Platform/2013.2.0.0/mingw/bin:
/c/Program Files/nodejs/:
/c/sbcl:
/c/emacs/bin:
/c/Documents and Settings/[my name]/Application Data/cabal/bin:
/c/Documents and Settings/[my name]/Application Data/npm:
.f
这是MinGW
:
/MinGW
/bin
/include
/libexec
/msys
/var
/doc
/lib
/mingw32
/share
这是MinGW/bin
:
aclocal autoreconf-2.68 ld.exe msgcat.exe
aclocal-1.10 autoscan libcharset-1.dll msgcmp.exe
aclocal-1.11 autoscan-2.13 libexpat-1.dll msgcomm.exe
aclocal-1.4 autoscan-2.68 libgcc_s_dw2-1.dll msgconv.exe
aclocal-1.5 autoupdate libgettextlib-0-18-3.dll msgen.exe
aclocal-1.6 autoupdate-2.13 libgettextpo-0.dll msgexec.exe
aclocal-1.7 autoupdate-2.68 libgettextsrc-0-18-3.dll msgfilter.exe
aclocal-1.8 c++.exe libgmp-10.dll msgfmt.exe
aclocal-1.9 c++filt.exe libgmpxx-4.dll msggrep.exe
addr2line.exe cc.exe libgomp-1.dll msginit.exe
ar.exe cpp.exe libiconv-2.dll msgmerge.exe
as.exe dlltool.exe libintl-8.dll msgunfmt.exe
autoconf dllwrap.exe libltdl-7.dll msguniq.exe
autoconf-2.13 elfedit.exe libmpc-3.dll ngettext.exe
autoconf-2.68 envsubst.exe libmpfr-4.dll nm.exe
autoheader g++.exe libquadmath-0.dll objcopy.exe
autoheader-2.13 gcc-ar.exe libssp-0.dll objdump.exe
autoheader-2.68 gcc-nm.exe libstdc++-6.dll pthreadGC2.dll
autom4te gcc-ranlib.exe libtool pthreadGCE2.dll
autom4te-2.68 gcc.exe libtoolize ranlib.exe
automake gcov.exe mingw-get.exe readelf.exe
automake-1.10 gdb.exe mingw32-c++.exe recode-sr-latin.exe
automake-1.11 gdbserver.exe mingw32-cc.exe size.exe
automake-1.4 gettext.exe mingw32-g++.exe strings.exe
automake-1.5 gettext.sh mingw32-gcc-4.8.1.exe strip.exe
automake-1.6 gettextize mingw32-gcc-ar.exe windmc.exe
automake-1.7 gprof.exe mingw32-gcc-nm.exe windres.exe
automake-1.8 iconv.exe mingw32-gcc-ranlib.exe xgettext.exe
automake-1.9 ifnames mingw32-gcc.exe zlib1.dll
autopoint ifnames-2.13 mingw32-make.exe
autoreconf ifnames-2.68 mingwm10.dll
autoreconf-2.13 ld.bfd.exe msgattrib.exe
答案 0 :(得分:1)
您需要将其放在PATH
环境变量中的某个位置。尝试将它(或其快捷方式)粘贴在与编译的可执行文件相同的目录中。
注意:libgmp由g ++使用,而不是您编译的可执行文件。 g ++需要在PATH
或当前工作目录中的某处找到libgmp。将它放在这两个地方之一,编译器将工作。
更新:您缺少多个DLL,这称为" DLL Hell"。解决这个问题的唯一真正方法是按照说明操作并完全重新安装。