windows下编译支持https的curl
先编译好openssl,过程详见:《windows下编译openssl》
编译好zlib,过程详见《windows下编译zlib》
1. 下载curl
官网:https://curl.haxx.se/download.html
或者点击 这里 下载
下载后解压
2. 配置包含文件目录和依赖库目录
查看源码根目录下winbuild目录下BUILD.WINDOWS.txt的提示
在源代码同级的目录下建立deps文件夹
此时的目录结构如下图
D:
|__curl-master
| |winbuild
|
|deps
| lib
| include
| bin
将D:\openssl-1.0.2s\include下的openssl夹拷贝到D:\deps\include\目录下;
将D:\openssl-1.0.2s\lib\lib目录下的libeay32.lib和ssleay.lib拷贝到D:\deps\lib目录下;
将zlib源码目录下的zconf.h、zlib.h和zutil.h拷贝到D:\deps\include目录下。
将zlib源码目录下的zlib.lib拷贝到D:\deps\lib目录下。
3. 打开“VS2013 x64 本机工具命令提示”窗口
进入目录D:\ProgramIDE\Microsoft Visual Studio 12.0\VC\bin\amd64
执行vcvars64.bat
4. 进入curl源码目录下的winbuild目录
执行编译命令:
nmake /f Makefile.vc mode=dll VC=12 WITH_DEVEL=D:\openssl-1.0.2s WITH_SSL=static ENABLE_SSPI=no ENABLE_IPV6=no DEBUG=yes
其中:
mode=dll:编译目标文件为动态库(如果要静态库,写static)
VC=12:表示编译环境是VS2013
WITH_DEVEL=D:\openssl-1.0.2s:表示openssl目录
WITH_SSL=static:表示openssl是静态库
ENABLE_SSPI=no:表示不支持SSIP
ENABLE_IPV6=no:表示不支持IPV6
DEBUG=yes:表示编译debug版本
稍后就可以在目录:curl-master\builds\libcurl-vc12-x64-debug-dll-ssl-static中看到编译后的结果
5. 测试curl对https的支持
可以看到对http和https都支持。