zlib、libzip、 libzippp 库编译(windows + cmake + vs2013)
"libzipp" 这库是基于 "libzip" 之上封装的,而 "libzip" 又是基于 "zlib"库封装的,所以要编译 "libzipp" 库就要先编译其他两个库。
下载准备:
"zlib-1.2.8.tar.gz"
"libzip-1.0.1.tar.gz"
"libzippp-master.zip"
编译环境:cmake + vs2013 , 安装好cmake和 "VS2013 x86 本机工具命令提示" 工具(安装vs2013的时候已经有)
命令行环境使用的是[VS2013 x86 本机工具命令提示],“开始”->"Visual Studio 2013"->"Visual Studio Tools"->"VS2013 x86 本机工具命令提示"
以下是本次编译过程,记录详细流程以备忘:
一、编译 zlib 库
1、将解压出来的 "zlib-1.2.8" 文件夹拷贝到 "E:\BuildWorkspace\" ;
2、命令行进入此路径,命令:[mkdir build] (创建 build 文件夹) ;
3、进入刚创建的"build"文件夹,命令:[cmake .. -G"Visual Studio 9 2008" -DCMAKE_INSTALL_PREFIX="install"] (构建工程)
4、在"build"目录下就有了工程文件,打开工程,编译"ALL_BUILD"项目生成库文件,编译"INSTALL"项目,会执行工程目录下的"cmake_install.cmake"脚本,最终在"build"目录下生成"install"文件夹,头文件、库文件等都在文件夹内了。
二、编译 libzip 库
1、将解压出来的"libzip-1.0.1"文件夹拷贝到"E:\BuildWorkspace\" ;
2、命令行进入此路径,命令:[mkdir build] (创建 build 文件夹) ;
3、进入刚创建的"build"文件夹,命令:[cmake .. -G"Visual Studio 9 2008" -DCMAKE_PREFIX_PATH="../zlib-1.2.8/build/install"] (构建工程)
4、在"build"目录下就有了工程文件,打开工程,编译"ALL_BUILD"项目,到这里就报错了(最少我在这里是报错了) ;
5、将"libzippp-master\lib\libzip-1.0.1-windows-patch.zip"的压缩文件解压出来,根据同名文件夹替换掉相应的文件,在执行第4步,OK ;
6、此时如果直接编译"INSTALL"项目,会生成到C盘根目录下"C:/Program Files (x86)/libzip"文件夹中,为了让它生成到"build\install"中,这里需要修改工程目录下的"cmake_install.cmake"脚本文件的第5行:
"set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/libzip")" 改成
"set(CMAKE_INSTALL_PREFIX "E:\BuildWorkspace\libzip-1.0.1\build/install")",
7、编译"INSTALL"->OK ;
三、编译 libzippp 库
1、将解压出来的"libzippp-master"文件夹拷贝到"E:\BuildWorkspace\" ;(PS:上面编译 libzip 库中的第五步就是在从此文件夹中找的"libzippp-master\lib\libzip-1.0.1-windows-patch.zip")
2、命令行进入此路径,命令:[mkdir build] (创建 build 文件夹) ;
3、为了方便 libzippp 项目的依赖关系,懒得修改,直接按照作者意思,把上面的 "libzip-1.0.1" 和 "zlib-1.2.8" 文件夹整个拷贝到 "E:\BuildWorkspace\libzippp-master\lib\" 目录中(当前,前提是已经完成了上面的编译工作);
4、进入刚创建的"build"文件夹,命令:[cmake .. -G"Visual Studio 12" -DCMAKE_PREFIX_PATH="lib/zlib-1.2.8/build/install"] (构建工程)
5、在"build"目录下就有了工程文件,打开工程,编译"ALL_BUILD"项目,OK!
PS:实测,用vs2008使用这库会有问题(可能是因为是用vs2013编译的缘故),后来干脆直接使用 libzippp 的类文件,不编译成库使用,OK!
zlib、libzip、 libzippp 库编译(windows + cmake + vs2013)的更多相关文章
- jpeg库编译 - windows平台
一.准备: 下载最新的jpeg库源码:http://www.ijg.org/files/jpegsr9a.zip二.编译 1. 解压到指定目录 2. 打开VS2010命令行窗口(为了得到VS2010的 ...
- zlib开发笔记(四):zlib库介绍、编译windows vs2015x64版本和工程模板
前言 Qt使用一些压缩解压功能,介绍过libzip库编译,本篇说明zlib库.需要用到zlib的msvc2015x64版本,编译一下. 版本编译引导 zlib在windows上的mingw32 ...
- 判断OpenCV是否为共享库,Windows基于CMake编译Caffe需要opencv共享库
判断OpenCV是否为共享库,Windows基于CMake编译Caffe需要opencv共享库 TLDR 只考虑windows下opencv预编译包的情况. 对于opencv2.4.x系列,cmake ...
- windows zlib库编译步骤
下载地址 http://www.zlib.net/ 动态库下载地址 如果自己实在不想编译的,可以直接下载 https://download.csdn.net/download/zhangxuechao ...
- 基于TDengine-ver-1.6.4.4在windows 10下cmake+msys2编译(windows cgo 使用)
目录 基于TDengine-ver-1.6.4.4在windows 10下cmake+msys2编译(windows cgo 使用) 背景 下载地址 仓库地址 安装部署 msys2 安装 配置环境变量 ...
- windows下编译nginx+nginx_rtmp_modue(vs2013)
阅读官方编译windows版本的方法 http://nginx.org/en/docs/howto_build_on_win32.html 我的环境 Windows 7 Ultimate 64,Vis ...
- go 工具链目前[不支持编译 windows 下的动态链接库][1],不过[支持静态链接库][2]
go 工具链目前[不支持编译 windows 下的动态链接库][1],不过[支持静态链接库][2].想要产生dll,可以这样 workaround ,参考 golang [issuse#11058][ ...
- cmake 编译windows程序
cmake 编译windows程序 cmake 编译windows程序 cmake 编译windows程序 尽量使用 尽量使用 尽量使用 https://www.cnblogs.com/liujia ...
- FFmpeg笔记:使用MSVC工具链编译Windows版本静态库、动态库
2019年3月开始,为了将音视频编解码功能集成到Cocos2d-x中,开始接触到FFmpeg: 当时开发环境还在Mac下,编译FFmpeg相比现在用Windows平台要方便的多: 最近,公司内部有个U ...
随机推荐
- 11-Json文件配置
1-新建json文件, 设置json文件生成的方式 { "ClassNo": "1", "ClassDesc": "Asp.net ...
- 3 Mongodb数据查询1
1.基本查询 方法find():查询 db.集合名称.find({条件文档}) 方法findOne():查询,只返回第一个 db.集合名称.findOne({条件文档}) 方法pretty():将结果 ...
- Quartus 11生成pof文件在AS烧写之后,程序无法启动
1. 首先配置成AS,生成.pof文件,选择上面的图标Device 2. 选择Device and Pin Options... 3. 进入配置界面,选择如下 4. 进入下载界面,烧写.pof文件,开 ...
- 初学JS——实现基于计时器的小游戏。
这几天一直在看网易云课堂上免费的JS课程,正好今天看到讲了计时器setInterval,第一感觉就是像C#里的TIMER.然后课程里举得例子正好通过计时器改变新生成窗口的位置, 然后就突然有了灵感!可 ...
- 解决NSTimer循环引用
NSTimer常见用法 @interface XXClass : NSObject - (void)start; - (void)stop; @end @implementation XXClass ...
- 《Cracking the Coding Interview》——第17章:普通题——题目14
2014-04-29 00:20 题目:给定一个长字符串,和一个词典.如果允许你将长串分割成若干个片段,可能会存在某些片段在词典里查不到,有些则查得到.请设计算法进行分词,使得查不到的片段个数最少. ...
- 【Substring with Concatenation of All Words】cpp
题目: You are given a string, s, and a list of words, words, that are all of the same length. Find all ...
- Jmeter获取Cookie并传递到下一个线程---跨线程后cookie找不到了
网上找了一堆文章没有一个是实际操作的,自己边试边查边摸索终于找到了一个全套的办法. 原创文章,转载请说明出处. 1.取得cookie 直接这样写就可以了${COOKIE_JSESSIONID},当然具 ...
- OpenCV实现张正友相机标定源代码
本源代码基于VC++和opencv Opencv2.4.13.6版本开发,实现张正友相机标定源代码,资源包括完整源代码和12张棋盘图片,完美运行.Opencv2.4.13.6安装包下载地址:http: ...
- Ajax---概念介绍
Ajax不是某种编程语言,是一种在无需重新加载整个网页的情况下能够更新部分网页的技术. 运用HTML和CSS来实现页面,表达信息: 运用XMLHttpRequest和Web服务器进行数据的异步交换: ...