zlib1.2.11静态编译

1.进入官网http://zlib.net/,下载且解压zlib1211.zip;

zlib1.2.11静态编译

2. 打开已解压的zlib-1.2.11,进入win32文件夹;

zlib1.2.11静态编译

3.将Makefile.msc复制到上一层,也就是图2,未进入win32前的地方

zlib1.2.11静态编译

zlib1.2.11静态编译

4.打开VS2013命令行工具,使用cd命令进入zlib-1.2.11目录(第3步Makefile.msc所在的目录)

zlib1.2.11静态编译

zlib1.2.11静态编译

zlib1.2.11静态编译

5.键入命令行:nmake /f Makefile.msc

zlib1.2.11静态编译

6.回车执行

zlib1.2.11静态编译

7.此时打开zlib-1.2.11目录,我们发现已经生成一系列文件。zlib静态库只需要zlib-1.2.11目录生成的三个文件,zlib.h / zconf.h / zlib.lib,但是请勿使用此时生成的zlib.lib,VS2013测试此时生成的zlib.lib静态库,使用函数uncompress,将一直断在汇编L_get_length_code_mmx.lib(亲身经历)。我们需要在VS2013将预处理器中ASMINF宏删除重新编译一份工程(不要着急,稍后就说怎么做)。那么,我们之前做的工作是否白费了呢?不是的。

zlib1.2.11静态编译

9.zlib-1.2.11目录,进入contrib目录,再进入vstudio目录,选择你的VC版本目录,具体看对应的表,VS2013选择vc12目录;

VS与VC对应关系
VS 6.0 VC6.0
VS 2002 VC7.0
VS 2003 VC7.1
VS 2005 VC8.0
VS 2008 VC9.0
VS 2010 VC10
VS 2012 VC11
VS 2013 VC12
VS 2015 VC14

 

zlib1.2.11静态编译 zlib1.2.11静态编译 zlib1.2.11静态编译

10.打开zlibvc.sln,进入工程(再坚持一会,编译马上好),选择编译生成Release发布版(勿选择Debug)。再选中zlibstat,右键属性,配置属性,C/C++,预处理器,预处理器定义,编辑,删除ASMINF。

zlib1.2.11静态编译

11.右键 zlibstat,重新生成。我们使用zlib.lib静态库,只要生成这一个就够了。也可以整个工程全部重新编译生成。

 zlib1.2.11静态编译

12.进入..zlib-1.2.11contribvstudiovc12x86ZlibStatRelease,我们发现zlibstat.lib。此版本使用uncompress正常,无断在汇编L_get_length_code_mmx.lib的错误。

zlib1.2.11静态编译

13.使用zlibstat.lib需要头文件,zlib.h与zconf.h。具体使用,我将写一篇随笔。

zlib1.2.11静态编译

原文链接: https://www.cnblogs.com/yangjinbang/p/8330786.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    zlib1.2.11静态编译

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/268167

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 下午7:09
下一篇 2023年2月14日 下午7:11

相关推荐