如何编译和使用zlib

如何编译Zlib
1、输入./configure
 提示错误“please use win32/makefile.gcc instead”
2、cp win32/makefile.gcc Makefile.gcc
3、make -f Makefile.gcc
   编译成功
4、在Makefile.gcc 文件中已经给我们定义了“INCLUDE_PATH”和“INCLUDE_PATH”变量,现在我明定义一下“INCLUDE_PATH”和“INCLUDE_PATH”变量的实际路径

执行
export INCLUDE_PATH=D:/GNU/MSYS/utils/zlib/include
export LIBRARY_PATH=D:/GNU/MSYS/utils/zlib/lib
export BINARY_PATH=D:/GNU/MSYS/utils/zlib/bin
make install -f Makefile.gcc
cp zlib1.dll D:/GNU/MSYS/utils/zlib/bin

上面的的方法中其实只用到了“INCLUDE_PATH”和“INCLUDE_PATH”变量,只有在SHARED_MODE=1的情况下,Makefile.gcc会自动将zlib1.dll拷贝到D:/GNU/MSYS/utils/zlib/bin目录


简单的方法,使用SHARED_MODE=1安装
1、编译
make -fwin32/Makefile.gcc
2、设置变量
export INCLUDE_PATH=D:/GNU/MSYS/utils/zlib/include
export LIBRARY_PATH=D:/GNU/MSYS/utils/zlib/lib
export BINARY_PATH=D:/GNU/MSYS/utils/zlib/bin
3、安装
make install -fwin32/Makefile.gcc SHARED_MODE=1

4、编译
gcc zlib_test.c -I /zlib/include -L /zlib/lib libz.a -o zlib_test

5、如果将zlib 的lib和include复制到MinGW,则
gcc zlib_test.c -S -lz
注意到,我们用-lz加入了zlib库
-S 表示生成汇编

6、使用makefile
zlib_test:zlib_test.c
    gcc -o zlib_test zlib_test.c -lz

clean:
    rm -rf *.o zlib_test

7、使用makefile分布生成
all: zlib_test.exe
    @echo "ALL"
zlib_test.exe: zlib_test.o
    gcc zlib_test.o -lz -o zlib_test
zlib_test.o: zlib_test.s
    gcc -c zlib_test.s -o zlib_test.o
zlib_test.s: zlib_test.i
    gcc -S zlib_test.i -o zlib_test.s
zlib_test.i: zlib_test.c    
    gcc -E zlib_test.c -o zlib_test.i
clean:
    rm -rf *.s *.i *.o *.exe zlib_test

在命令行输入 make all,make zlib_test.exe 或者 make clean
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值