官方网址:http://www.zlib.net/

进入官网看到,如图所示,最新版本为zlib 1.2.11

然后你用wget  http://www.zlib.net/zlib 1.2.11或者wget  http://www.zlib.net/zlib-1.2.11下载,那你永远下载不了.

嘿嘿,正确的下载方式是wget  http://www.zlib.net/zlib-1.2.11.tar.gz

进入目录可以看到

解压压缩包:

.tar.gz------------> tar  zxvf  压缩包.tar.gz

.tar.bz2-----------> tar  jxvf  压缩包.tar.bz2

解压压缩包 tar zxvf zlib-1.2.11.tar.gz 结果如下

在当前查看到

进入zlib-1.2.11目录

源码编译方式安装软件:

① ./configure         //在解压软件目录内部执行

相关参数配置,软件安装位置,支持软件设置,软件依赖检查,生成编译对应的工具文件。

例如--prefix是设置软件的安装位置

② make               //根据configure的配置信息生成“二进制文件”

③ make  install        //把生成的二进制文件复制到系统指定目录

安装完成!

一、Zlib的安装

Linux平台:

1、Zlib的下载

wget  http://www.zlib.net/zlib-1.2.11.tar.gz

2、解压

 tar zxvf zlib-1.2.11.tar.gz 

3、编译(进入zlib-1.2.11目录)

cd  zlib-1.2.11
 ./configure && make && make install

源码编译说明:

① ./configure         //在解压软件目录内部执行

相关参数配置,软件安装位置,支持软件设置,软件依赖检查,生成编译对应的工具文件。

例如--prefix是设置软件的安装位置

② make               //根据configure的配置信息生成“二进制文件”

③ make  install        //把生成的二进制文件复制到系统指定目录

Window平台:

1、编译

进入"/contrib/vstudio"子目录,找到对应版本的vs打开,然后编译

备注:

(1)如果编译过程中出现"fatal error LNK1281: 无法生成 SAFESEH 映像"的错误,则将该项目的 属性页->链接器->高级->映像具有安全异常处理程序->选“否”

2、使用

(1)需要包含的头文件是"zlib.h"和"zonf.h"

(2)在项目的 属性页->c/c++->预处理器->预处理器定义  里添加  ZLIB_WINAPI

二、Zlib的功能测试

写一个简单的例子测试一下,注意编译的时候要加入 -lz 这个库

zlib.c

gcc  -o zlib zlib.c -lz

./zlib

#include <stdio.h>#include <zlib.h>int main(int argc,char **args){/*原始数据*/unsigned char strsrc[]="这些是测试数据。123456789 abcdefghigklmnopqrstuvwxyz\n\t\0abcdefghijklmnopqrstuvwxyz\n"; //包含\0字符unsigned char buf[1024]={0};unsigned char strdst[1024]={0};unsigned long srclen=sizeof(strsrc);unsigned long buflen=sizeof(buf);unsigned long dstlen=sizeof(strdst);int i;FILE * fp;printf("源串:");for(i=0;i<srclen;++i){printf("%c",strsrc[i]);}printf("原串长度为:%ld\n",srclen);printf("字符串预计算长度为:%ld\n",compressBound(srclen));//压缩compress(buf,&buflen,strsrc,srclen);printf("压缩后实际长度为:%ld\n",buflen);//解压缩uncompress(strdst,&dstlen,buf,buflen);printf("目的串:");for(i=0;i<dstlen;++i){printf("%c",strdst[i]);}return 0;}

编译及测试结果:

test.c

gcc  -o test test.c -lz   

./test

#include <stdio.h>
#include <zlib.h>  int main()
{  /* 原始数据 */  unsigned char strSrc[] = "hello world! aaaaa bbbbb ccccc ddddd 中文测试 yes";  unsigned char buf[1024] = {0};  unsigned char strDst[1024] = {0};  unsigned long srcLen = sizeof(strSrc);  unsigned long bufLen = sizeof(buf);  unsigned long dstLen = sizeof(strDst);  printf("Src string:%s\nLength:%ld\n", strSrc, srcLen);  /* 压缩 */  compress(buf, &bufLen, strSrc, srcLen);  printf("After Compressed Length:%ld\n", bufLen);  /* 解压缩 */  uncompress(strDst, &dstLen, buf, bufLen);  printf("After UnCompressed Length:%ld\n",dstLen);  printf("UnCompressed String:%s\n",strDst);  return 0;
}  

参考:

1、Zlib库的安装与使用

Zlib的安装与测试相关推荐

  1. zlib的安装与使用

    zlib是一个很好的压缩解压缩库,今天我们分别介绍如何在Linux与Windows上安装与使用: 一:Linux平台 首先看看自己的机器上是不是已经安装好zlib了: whereis zlib 如果安 ...

  2. my SQL下载安装,环境配置,以及密码忘记的解决,以及navicat for mysql下载,安装,测试连接...

    一.下载 在百度上搜索"mysql-5.6.24-winx64下载" 二.安装 选择安装路径,我的路径"C:\Soft\mysql-5.6.24-winx64" ...

  3. http_load安装与测试参数分析

    http_load安装与测试参数分析 http_load以并行复用的方式运行,用以测试 web 服务器的吞吐量与负载.但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死. ...

  4. nginx 没有sbin目录_CentOS7下Nginx+ModSecurity配置、安装、测试教程

    " 最近在工作上遇到一点问题,问了大佬.百度,都没有很好地解决:经过大量搜索查阅以及试验,终于将问题解决.于是写下这篇文章以提醒自己,也可供读者参考." 环境:CentOS-7-x ...

  5. AutoBench+Httperf的安装、测试

    首先安装Httperf.主要是Httperf网路上给出的url均无法访问,因此在GitHub上找的源码工程,进行安装. 接下来介绍安装步骤,从Github下载下来的httperf包是zip. unzi ...

  6. 安装并测试nvenc linux sdk

    2019独角兽企业重金招聘Python工程师标准>>> nvidia在cuda之后推出一种官方生成更好视频处理技术nvenc. 网上相关资料很少, 也不知道这个东西到底怎么样,自己测 ...

  7. appium for mac 安装与测试ios说明

    一.安装 安装dmg,可以自己下载appium-1.4.0.dmg或者找rtx我要,文件过大不能添加附件. Appium提供了一个doctor,运行appium-doctor 如果有问题,Fix it ...

  8. Faste R-CNN的安装及测试

    一.拉取源码 下载 fast-rcnn 因下载解压后 caffe-fast-rcnn是空文件夹,故需要单独下 caffe-fast-rcnn-bcd9b4eadc7d8fbc433aeefd564e8 ...

  9. Faster R-CNN的安装及测试(Python版本和Matlab版本)

    rbg的Python版本 一.拉取源码 git clone --recursive https://github.com/rbgirshick/py-faster-rcnn.git 拉取完成后,在/h ...

最新文章

  1. imageserver
  2. 什么是 FreeMarker
  3. 实现IButtonControl接口时, PerformClick()方法的代码怎么写,请高手指导!
  4. 围棋提子后的子放哪_围棋入门知识点:围棋规则 —— 禁入点
  5. 8.9 NOIP模拟测试15 建设城市(city)+轰炸行动(bomb)+石头剪刀布(rps)
  6. 系统修复对电脑的影响有哪些
  7. shell编程——判断条件
  8. 产品经理需要NPDP证书吗?
  9. android 电容触摸屏,剖析触摸屏上的电容按键
  10. 基于Spring Boot的健身房管理系统设计与实现
  11. 使用C# .net开发微信公众号之服务器URL配置
  12. 在浏览器的标签页显示网站标志图标
  13. unique中译_unique 是什么意思_unique 的翻译_音标_读音_用法_例句_爱词霸在线词典...
  14. 故障分析 | Greenplum Segment 故障处理
  15. 大学计算机操作题模拟,大学计算机一级模拟操作题1
  16. “程序媛”女神节,华章图书备厚礼,快来拿礼物
  17. python编写会动的火柴人_火柴人跑步怎么画 如何制作一个正在奔跑的火柴人动画形象?火柴人跑步动作怎么画...
  18. 轻轻松松装个win7系统
  19. 1、orbslam2 安装与运行
  20. 电影摄影第一课:平面摄影师进阶电影视频制作全攻略

热门文章

  1. 深度学习:乳腺检测abnormality detection in mammography +CAM
  2. 基于DLNA实现iOS、Android投屏:基本概念
  3. android 上层设置 自动调节亮度
  4. 实现一个小程序分享图 wxml2canvas
  5. r语言绘制精美pcoa图_R数据可视化4: PCA和PCoA图
  6. 计算机图形学的数学基础
  7. 软件测试技能大赛山东省,2018年全国职业院校技能大赛山东省选拔赛高职组软件测试赛项规程.pdf...
  8. linux怎么模糊查找文件,linux模糊查找一个文件的方法
  9. 《控制论导论》读书:变异度-度量变异度
  10. 卸载包时不要简单的用 uninstall !!