VC++ 编译libcurl 支持SSL,GZIP(有脚本)
由于网上下载的 libcurl 不支持 gzip,只好自己动手编译,期间走了很多弯路,下面是最终成功的记录。
我所使用的环境 Visual Studio 2010 、 Windows 7 64 bit
1 下载文件
1.1 libcurl
下载页面 http://curl.haxx.se/download.html
下载地址 http://curl.haxx.se/download/curl-7.26.0.zip
1.2 zlib
下载页面 http://sourceforge.net/projects/libpng/files/zlib/
下载地址 http://sourceforge.net/projects/libpng/files/zlib/1.2.5/zlib125.zip/download
(特别提醒,不要使用1.2.7版编译,使用后发现编译的方法和文件名都不同了)
1.3 openssl
下载页面 http://www.openssl.org/source/
下载地址 http://www.openssl.org/source/openssl-1.0.0c.tar.gz
(特别提醒,不建议用1.0.1c,虽可编译成功,但无法绕过SSL证书,不知其原因,浪费了我不少时间)
编译openssl还需下载ActivePerl
官方下载 http://www.activestate.com/activeperl/downloads
下载地址:http://downloads.activestate.com/ActivePerl/releases/5.16.0.1600/ActivePerl-5.16.0.1600-MSWin32-x86-295879.msi
X64下载地址:http://downloads.activestate.com/ActivePerl/releases/5.16.0.1600/ActivePerl-5.16.0.1600-MSWin32-x64-295879.msi
2 解压及安装文件
2.1 ActivePerl安装,双击直接下一步,默认设置到底。
2.2 zlib openssl libcurl分别解压,他们三个在同一级目录。
例如:D:UserDeweiTestCurlcurl-7.26.0、D:UserDeweiTestCurlopenssl-1.0.0c、D:UserDeweiTestCurlzlib-1.2.5
3 编译过程
3.1 zlib编译
用vs2010打开zlib-1.2.5/old/visualc6/zlib.dsw,选择DLL_Release编译,把编译生成的zlib-1.2.5/old/visualc6/Win32_DLL_Release/ zlib1.lib 复制到curl-7.26.0/lib目录下,重命名为 zdll.lib (注意必须为此文件名) 。
3.2 openssl编译
打开cmd,cd到openssl-1.0.0c目录下;
运行命令 perl Configure VC-WIN32
再运行 msdo_ms.bat
再运行 “C:Program Files (x86)Microsoft Visual Studio 10.0vcvars32.bat”
运行命令 nmake -f ms/ntdll.mak
参考资料:openssl-1.0.0c/INSTALL.W32
3.3 编译curl-7.26.0
在curl-7.26.0/lib目录下新建release.bat,输入以下内容
call “C:/Program Files/Microsoft Visual Studio 10.0/VC/bin/vcvars32.bat”
set CFG=release-dll-ssl-dll-zlib-dll
set OPENSSL_PATH=../../openssl-1.0.0c
set ZLIB_PATH=../../zlib-1.2.5
nmake -f Makefile.vc10
保存,然后运行。
等待一会儿,就可以到 curl-7.26.0librelease-dll-ssl-dll-zlib-dll 目录下拷文件 libcurl_imp.lib和libcurl.dll 啦!
参考资料:curl-7.26.0/docs/INSTALL
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
Usage: nmake /f makefile.vc6 CFG=<config> <target> where <config> is one of: release - release static library release-ssl - release static library with ssl release-zlib - release static library with zlib release-ssl-zlib - release static library with ssl and zlib release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib release-ssl-dll - release static library with dynamic ssl release-zlib-dll - release static library with dynamic zlib release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynam ic zlib release-dll - release dynamic library release-dll-ssl-dll - release dynamic library with dynamic ssl release-dll-zlib-dll - release dynamic library with dynamic zlib release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dyna mic zlib debug - debug static library debug-ssl - debug static library with ssl debug-zlib - debug static library with zlib debug-ssl-zlib - debug static library with ssl and zlib debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib debug-ssl-dll - debug static library with dynamic ssl debug-zlib-dll - debug static library with dynamic zlib debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib debug-dll - debug dynamic library debug-dll-ssl-dll - debug dynamic library with dynamic ssl debug-dll-zlib-dll - debug dynamic library with dynamic zlib1 debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynami c zlib |
本文出自 王牌软件,转载时请注明出处及相应链接。
本文永久链接: http://www.softwareace.cn/?p=525
http://www.yaoguangkeji.com/a_W3V5MKwb.html
VC++ 编译libcurl 支持SSL,GZIP(有脚本)的更多相关文章
- VC++ 编译libcurl 支持SSL,GZIP
由于网上下载的 libcurl 不支持 gzip,只好自己动手编译,期间走了很多弯路,下面是最终成功的记录. 我所使用的环境 Visual Studio 2010 . Windows 7 64 bit ...
- 编译libcurl支持https协议
编译与安装参考:http://www.cnblogs.com/openiris/p/3812443.html 注意事项:先下载安装完nasm和perl再打开控制台(需要将nasm安装路径添加到Path ...
- 编译安装haproxy开启支持SSL
1.下载程序包 # wget http://www.haproxy.org/download/1.7/src/haproxy-1.7.5.tar.gz # tar xvf haproxy-1.7.5. ...
- 迁移到MSYS2 与 Qt 工具链注意的几个事情(g++在链接时,符号依赖项查找遵循从左至右的顺序,但qmake会自动合并造成错误。使用脚本给Mingw32-make创造出一个局部的VC编译环境)
Microsoft Visual Studio 2015社区版提供了强大的开发体验,且 Qt 提供了预编译版本.然而,由于客户提出兼容Windows XP ~ Windows 8.1 这样宽泛的环境要 ...
- nginx编译安装支持lua脚本
一.准备编译环境 1.操作系统:CentOS7.6 2.安装编译所需安装包 yum install gcc pcre pcre-devel zlib zlib-devel openssl openss ...
- windows 下编译libcurl
因为linux平台采用了libcurl,有一个程序移植到到windows平台,再linux采用libcurl.在windows下准备也采用该库.在网上搜索了几位同行写的,步骤上面有缺失. 本文将以详细 ...
- 【转】linux 编译安装nginx,配置自启动脚本
linux 编译安装nginx,配置自启动脚本 本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装ng ...
- VC++编译MPIR 2.7.0
目录 第1章编译 2 1.1 简介 2 1.2 下载 3 1.3 解决方案 4 1.4 创建项目 5 1.5 复制文件树 6 1.6 不使用预编译头文件 8 ...
- linux 编译安装nginx,配置自启动脚本
本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装nginx,记录下安装过程: 参照这篇文章:Linu ...
随机推荐
- [转载]Ocelot简易教程(五)之集成IdentityServer认证以及授权
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9807125.html 最近比较懒,所以隔了N天才来继续更新第五篇Ocelot简易教程,本篇教程会先简单介 ...
- libevent源码分析-介绍、安装、使用
Libevent介绍 安装 样例 Libevent介绍 在include\event2\event.h中有关于Libevent的介绍,这里简单翻译介绍一下: Libevent是以事件为驱动的开发可扩展 ...
- 无线物联网中CoAP协议的研究与实现【转】
无线物联网中CoAP协议的研究与实现 时间:2013-04-09 来源:电子科技 作者:汤春明,张 荧,吴宇平 关键字:CoAP 无线 物联网 协议 摘要:由于物联网中的很多设备都是资源受 ...
- android 之修改图片的某一颜色值
首先我们来创建一个叫Image的类,这个类主要用来处理与图有关的一些操作. package org.cn.tools; import java.io.IOException; import java. ...
- js进阶正则表达式7点数字字母空格(w d s)(小写表原意,大写表反义)(特殊字符要加反斜杠:var reg22=/\W/g)
js进阶正则表达式7点数字字母空格(w d s)(小写表原意,大写表反义)(特殊字符要加反斜杠:var reg22=/\W/g) 一.总结 1.w d s,word digital space 2.特 ...
- php标准库spl栈SplStack如何使用?
php标准库spl栈SplStack如何使用? 一.总结 php标准库spl栈SplStack介绍.(SplStack类)(各种方法都支持) 1.SplStack类:$stack = new SplS ...
- Android XMPP服务器, BOSH(Http-Binding)和WEB客户端搭建
目标: 搭建一个XMPP服务器, 实现在web page上用javascript与自己XMPP服务器通信, 匿名登录并与任何一个XMPP(Jabber)帐户通信. (Gtalk目前尚有问题) XMPP ...
- erlang数字转字符串
http://fengmm521.blog.163.com/blog/static/2509135820147922355273/ 如果有一个数字,你想要转换成字符串这个在Erlang中是怎么操作的, ...
- mysql 下 计算 两点 经纬度 之间的距离 计算结果排序
根据经纬度计算距离公式 公式 对上面的公式解释如下: Lung1 Lat1表示A点经纬度, Lung2 Lat2表示B点经纬度: a=Lat1 – Lat2 为两点纬度之差 b=Lung1 -Lung ...
- Zepto.js touch,tap增加 touch模块深入分析
1. touch库实现了什么和引入背景 click事件在移动端上会有 300ms 的延迟,同时因为需要 长按 , 双触击 等富交互,所以我们通常都会引入类似 zepto 这样的库.zepto 中tou ...