返回> 网站首页
curl增加https支持 - openssl zlib编译
yoours2017-06-21 15:25:02
简介一边听听音乐,一边写写文章。
一、zlib
下载地址 http://www.zlib.net/
使用CMake打开创建编译VS2008环境,编译即可
把编译文件夹下的zconf.h拷贝到zlib目录下
二、openssl-1.0.2l
创建bat文件,内容如下:
echo off & color 0A
:: 项目名称
set PROJECT=openssl
:: 版本标签
set VESION=OpenSSL_1_0_1l
:: 项目路径
set PROJECT_PATH=%cd%
:: 代码存放路径
set CODE_PATH="%PROJECT_PATH%\%PROJECT%-%VESION%"
::安装路径
set OPENSSL_INSTALL_DIR="%cd%\output"
cd /d "%CODE_PATH%"
::通过perl脚本根据配置生成makefile
perl Configure VC-WIN32 --prefix=%OPENSSL_INSTALL_DIR% no-asm
:: 设置VS工具集目录,取决于电脑中VS安装路径
set VS_DEV_CMD="D:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat"
call %VS_DEV_CMD%
:: 编译
call ms\do_ms.bat
nmake -f ms\ntdll.mak
:: 测试(可选)
nmake -f ms\ntdll.mak test
:: 安装
nmake -f ms\ntdll.mak install
pause
在 Visual Studio 2008 Command Prompt 命令行下运行即可。
三、curl编译
CMake 打开 libcurl 的 CMakeList.txt。
Add Entry:
ZLIB_INCLUDE_DIR D:/developer/include/zlib
ZLIB_LIBRARIES D:/developer/library/zlib
OPENSSL_INCLUDE_DIR D:/developer/include
OPENSSL_LIBRARIES D:/developer/library/openssl
ZLIB_LIBRARIES_RELEASE D:\zlib-1.2.11\build\Release\zlib.lib
Configure,这里还有一个CMake的大坑。第一次Configure后,把Advanced勾上。
SSL_EAY_RELEASE设置为 D:/developer/library/openssl/ssleay32.lib
LIB_EAY_RELEASE设置为 D:/developer/library/openssl/libeay32.lib
还有设置ZLIB里面的内容,注意,如果不勾选Advanced,你设置的ZLIB选项是无效的(天坑啊!)。
补充: 另外这里还有一个地方需要注意一下,Configure时,你要么用OpenSSL,要么可以用Windows SSPI,如果你用OpenSSL,在用CMake生成CURL的解决方案时,要把CURL_WINDOWS_SSPI这个选项的钩给去掉(要出现这个选项,需要勾选CMake的Advanced),否则会出现结构重定义的问题,如果你不使用OpenSSL,不传OPENSSL_INCLUDE和OPENSSL_LIBRARIES进去就好,然后把CMake里那个CMAKE_USE_OPENSSL的钩取消掉,不过前提是你是在编译Windows用的libcurl。
参考:
http://www.cnblogs.com/cnmlgb/p/4976458.html
http://www.cnblogs.com/jingzhishen/p/6216010.html
文章评论
1983人参与,0条评论