关于zlib的配置

本文档介绍了在Windows环境下编译zlib 1.2.5时遇到的问题及解决方案。通过添加缺失的inffast.obj到Makefile.msc的OBJS中,解决了编译过程中未解析外部符号的错误,成功生成zlib.lib并将其添加到项目的链接器依赖库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  今天被zlib折腾了一天,终于解决了,原来用的是它里面的readme的指示,可是有点版本的问题,出现缺少zlibvc.dll,无法生成zlib.lib,我自己下了一个zlib.lib,出现应用程序不匹配,无法启动,后来按照下面的方法配置成功了,生成了zlib.lib,把zlib.lib加入你程序linker的依赖性就可以了:项目-属性-链接器-输入-附加依赖库就ok了。

 

在Windows下编译zlib 1.25


链接: http://demon.tw/software/compile-zlib-on-windows.html

1、从 zlib 官网上下载 zlib 1.25 的源码,解压到 zlib-1.2.5

2、打开 Visual C++ 命令提示符,把当前目录切换到 zlib-1.2.5 所在的目录

3、输入命令

nmake -f win32/Makefile.msc

不久会出现下面的错误

infback.obj : error LNK2001: unresolved external symbol _inflate_fast 
inflate.obj : error LNK2001: unresolved external symbol _inflate_fast 
zlib1.dll : fatal error LNK1120: 1 unresolved externals 
NMAKE : fatal error U1077: ‘link’ : return code ’0×460′ 
Stop.

查看 Makefile.msc 文件,可以发现在定义 OBJS 时没有包括 inffast.obj

OBJS = adler32.obj compress.obj crc32.obj deflate.obj gzclose.obj gzlib.obj gzread.obj \ 
       gzwrite.obj infback.obj inflate.obj inftrees.obj trees.obj uncompr.obj zutil.obj 
OBJA =

估计是作者忘记了,在 OBJS 中加入 inffast.obj 并保存,再次输入上面的命令重新编译即可。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值