libcurl编译增加ssl功能

来源:互联网 发布:剑灵人族体型数据 编辑:程序博客网 时间:2024/05/26 17:46

libcurl默认编译是不带ssl功能的,在访问https网站时就会报错。如果需要增加ssl功能,那么在编译时就要做一些配置。

1.编译openssl的库文件

1.1 准备编译环境

首先下载openssl程序,可以从www.openssl.org下载。

安装perl,windows环境下可以用ActivePerl,linux环境自带perl。

安装visual studio。

1.2 执行编译,以下操作都在vs的本机工具命令提示中执行

cd 到 openssl的程序目录

perl Configure no-asmVC-WIN32 (release版本)

如果需要编译debug版本,需要将ms\do_ms的第三行和第四行改为:

perl util\mk1mf.pl no-asm debug VC-WIN32 >ms\nt.mak
perl util\mk1mf.pl dll no-asm debug VC-WIN32 >ms\ntdll.mak

再下一步执行:

ms\do_ms

编译静态库执行:nmake -f ms\nt.mak

编译态库执行:nmake -f ms\ntdll.mak

等待编译完成,静态库会生成out32文件夹,动态库会生成out32dll文件夹,库文件在这两个文件夹里,名字是libeay32.lib 和 ssleay32.lib。

同时会生成inc32/openssl的文件夹,这里面是头文件,编译libcurl时需要引用这个文件夹里的头文件。

2.编译libcurl库文件

需要注意libcurl的库跟openssl的库要保持一致,既静态/动态(MT/MD),debug/release(MTd/MDd)的选择要一样。

2.1curl的程序文件夹下面有个vs\vc8\lib的文件夹,里面有vs2008的工程文件,如果用vs2008以上的版本,可以直接打开这个文件,会提示升级,一路升级就可以。

2.2修改工程选项:

预处理器定义中增加 USE_SSLEAY;USE_OPENSSL;

头文件包含目录增加第一步中生成的 inc32/openssl

引用库增加libeay32.lib;ssleay32.lib

2.3 执行编译

0 0
原创粉丝点击