MinGW c++编译器出现zlib1.dll缺失错误?

32

我刚开始学习C++用于学校,尝试下载MinGW编译器来编译我的源代码。但是,每次我尝试编译程序时都会弹出一个错误消息,说缺少zlib1.dll

这是错误消息:

该程序无法启动,因为您的计算机缺少zlib1.dll

我已经尝试过安装/重新安装,但没有成功。我不知道问题出在哪里?

有人能帮助我解决这个问题吗?因为我需要完成一些作业,但没有编译器就做不了。

谢谢。


你从哪里获取到编译器的? - Niall
http://www.mingw.org/wiki/Getting_Started - GamefanA
安装包中是否有任何zlib* dll文件? - Niall
在以下路径中只有一个名为zlib.dll的文件:"C:\MinGW\msys\1.0\lib\perl5\vendor_perl\5.8\msys\auto\Compress\Raw\Zlib"。 - GamefanA
似乎是某种后安装步骤,请检查答案。 - Niall
3个回答

52

我也遇到了同样的问题,但是我通过以下方法解决了它:

  1. 我运行了 MinGW 安装管理器(例如:C:\MinGW\libexec\mingw-get\guimain.exe)。

  2. 我进入到 All Packages -> MinGW -> MinGW Libraries 页面。

  3. 我勾选了 mingw32-libz (devdll) 旁边的复选框。

    Screenshot

  4. 最后,我点击了 Installation -> Apply Changes 按钮。

现在一切都能正常工作了。


这对我来说完美地运作了。可惜最新版本仍然无法使用std::stoi。 - Martyn Shutt
如果您安装了mingw32-base(在MinGW> MinGW基本系统下),则libz也会被包含在内。 - Andrew McKinlay

13
MinGW入门指南可获得自动化GUI安装助手(或使用mingw-get),其名称为“MinGW Installation Manager”,可用于安装其他库并管理依赖项。对于缺少的zlib库,请根据需要添加mingw32-libz库。
看起来以前在超级用户这里曾经有过问题。似乎可以直接从zlib网站获取它们。 Open Babel上有一些必须在之后复制(与其他一些dll一起)的信息。
替代方案包括使用nuwenmingw-buildsmingw-w64 distros。我从未在安装和运行这些软件时遇到过任何问题。它们还支持x64构建。

谢谢,现在就可以了。 - GamefanA
4
提醒一下不知道该把dll放在哪里的人,它应该放在/MinGW/bin/目录下。 - I am a Terrible Programmer

8

我这里也遇到了同样的问题,我只是在命令提示符中使用mingw-get install mingw32-libz,然后它就起作用了。


这应该是被接受的答案,或与Doug的图形用户界面答案相结合。 - lawlist

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接