使用vs2019编译libcurl(支持https、gzip)

序言

本篇讲解如何使用vs2019编译libcurl库,另外讲解如何开启支持https、gzip功能。我有已经编译好的libcurl静态库文件,支持https、gzip可以直接下载:

libcurl编译好的库和头文件-C++文档类资源-CSDN下载

如果想自己编译其它版本的库文件可以按照下面的教程编译。

一、下载需要使用到的库源码

       1.libcurl库:curl - Download

                

                我一般比较习惯下载zip格式的压缩包,所以选择红线的链接下载

        2.openssl库:OpenSSL库和头文件-C++文档类资源-CSDN下载

        3.zlib库:编译好的zlib库和头文件-C++文档类资源-CSDN下载

                ​​​​​​

 二、开始编译

        将所有下载完成的库源码拷贝到一个目录存放好(如下图存放),现在准备工作已经做好了,那么下面就开始编译源码

        1.编译zlib:解压上面链接下载的zlib.zip,用vs2019打开zlib.vcxproj,点击编译就会生成zlib.lib文件

        2.OpenSSL:解压上面链接下载的openssl.zip

        3.编译libcurl:

                a. 解压下载的库文件,在目录curl-7.83.1\projects\Windows\VC15\用vs2019打开curl-all.sln

                b.选择编译选项:Lib Release - DLL OpenSSL

                c.右键项目属性 -> C/C++ -> 常规 -> 附加包含目录,将zlib、OpenSSL的头文件目录添加进去

                d.项目属性 -> C/C++ -> 预处理器 -> 预处理器定义,在里面添加2个选项:USE_OPENSSL、USE_ZLIB

                 e.在config-win32.h这个文件的最下面添加如下代码:

/* USE_ZLIB on cmd-line */
#ifdef USE_ZLIB
#define HAVE_ZLIB_H            1
#define HAVE_LIBZ              1
#endif

                 f.做完这些就可以开始编译了,编译完成后会生成文件libcurl.lib,需要用到的头文件在目录curl-7_75_0\include\curl里面

三、其它注意事项

        我们的程序在使用编译好的libcurl.lib过程中会遇到一些链接错误,可以在程序中添加如下的lib库。这是因为libcurl在编译的时候引用到了第三方库的导致的。

#pragma comment(lib, "Crypt32.lib")
#pragma comment(lib, "Ws2_32.lib")
#pragma comment(lib, "Wldap32.lib")
#pragma comment(lib, "libcurl.lib")
#pragma comment(lib, "libssl.lib")
#pragma comment(lib, "libcrypto.lib")
#pragma comment(lib, "zlib.lib")


 

猜你喜欢

转载自blog.csdn.net/dm569263708/article/details/124727745