码迷,mamicode.com
首页 > 其他好文 > 详细

zlib1.2.11静态编译

时间:2018-01-22 20:04:45      阅读:256      评论:0      收藏:0      [点我收藏+]

标签:gpo   .net   style   stat   命令行   min   res   ref   make   

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

技术分享图片

2. 打开已解压的zlib-1.2.11目录,找到win32文件夹

技术分享图片

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

技术分享图片

技术分享图片

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

技术分享图片

技术分享图片

技术分享图片

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

技术分享图片

6.回车执行

技术分享图片

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宏删除重新编译一份工程(不要着急,稍后就说怎么做)。那么,我们之前做的工作是否白费了呢?不是的。

技术分享图片

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

技术分享图片 

技术分享图片 技术分享图片

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

技术分享图片

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

 技术分享图片

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

技术分享图片

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

技术分享图片

zlib1.2.11静态编译

标签:gpo   .net   style   stat   命令行   min   res   ref   make   

原文地址:https://www.cnblogs.com/yangjinbang/p/8330786.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!