windows下使用vs2010编译支持https的curl

一、编译openssl库

1https依赖ssl,从github下载openssl源码,这里下载的是openssl-1.0.2.v-dev版本,地址https://codeload.github.com/openssl/openssl/zip/refs/heads/OpenSSL_1_0_2-stable,下载解压后可以打开INSTALL.W32进行参考。

2、openssl编译依赖perl,需要先下载ActivePerl,可以从官网上下(The Perl Programming Language - www.perl.org),不过好像是在线安装,也可以下载安装离线版。

3、下载nasm,官网http://www.nasm.us/,安装后确认nasm.exe在电脑环境变量里,使用汇编编译可以提高openssl效率,不过也可以不安装nasm,直接使用vc编译。

4、新建两个文件夹,E:\code\openssl-1.0.2v-bin\debug,E:\code\openssl-1.0.2v-bin\release

打开Visual Studio Command Prompt (2010),进入到openssl源码目录,依次执行

4.1)perl Configure VC-WIN32 --prefix=E:\code\openssl-1.0.2v-bin\release

4.2)ms\do_nasm

4.3)nmake -f ms\ntdll.mak

4.4)nmake -f ms\ntdll.mak install

顺利的话,然后就可以在E:\code\openssl-1.0.2v-bin\release\bin看到生成的libeay32.dll、ssleay32.dll等文件了

说明:如果想编译debug版,4.1执行

perl Configure debug-VC-WIN32 --prefix=E:\code\openssl-1.0.2v-bin\debug

如果不想用nasm编译汇编,4.1&4.2执行

perl Configure VC-WIN32 no-asm --prefix=perl Configure VC-WIN32 --prefix=E:\code\openssl-1.0.2v-bin\release

ms\do_ms

二、编译curl

1、从https://github.com/curl/curl下载源码,我下载的是curl 7.86.1版本

2、本文用到了cmake编译,如果没有就下载一个吧,跨平台解决方案生成和编译的好工具。

3、打开cmd,进入到curl源码目录,依次执行

mkdir build

cd build

cmake ../ -G "Visual Studio 10 2010" -DCURL_USE_OPENSSL=ON -DCURL_ENABLE_SSL=ON -DOPENSSL_ROOT_DIR=E:\code\openssl-1.0.2v-dev-bin\debug -DBUILD_TESTING=OFF

接着可以看到build下生成的vs解决方案,使用vs接着编译即可,如果想生成release版,需要把OPENSSL_ROOT_DIR也改成release版

三、测试

第二步生成成功后,打开cmd,切换到curl源码\build\src\Debug目录,分别执行

curl.exe http://www.baidu.com -i

curl.exe https://www.baidu.com -i -k

查看返回的网页内容,其中-k表示关闭ssl证书认证

你可能感兴趣的:(开源,openssl,#,curl,windows,vs2010,编译,https,curl)