让libcurl通过启用OpenSSL来支持Https

279 阅读1分钟

在编写一个C++程序调用Libcurl访问一个https 地址请求的时候出现: unsupported protocol. .

怀疑是编译的libcurl.lib 不支持ssl导致的。

网络上搜索了一下,发现好的帖子很少,其实挺失望的很多写的非常复杂。自己整理下,其实没那么繁琐。

  1. 先去libcurl官网下载源代码curl.se/,源代码在git上的。github.com/curl/curl
  2. 用cmake软件进行配置,关键有几个 去掉测试项目(冗余的) 我勾选的生成static静态库 CURL_ENABLE_SSL CURL_USE_OPENSSL 这个默认没有勾选。要勾选。就是这个关键

编辑切换为居中

添加图片注释,不超过 140 字(可选)

配置后,需要配置系统环境 给OpenSSL的根目录和lib目录。这里是我的路径,你需要修改成给你的。

编辑

添加图片注释,不超过 140 字(可选)

  1. 点击generate生成vs工程,打开编译即可输出。

输出这些文件

编辑

添加图片注释,不超过 140 字(可选)

然后到项目中使用,会发现很多Open SSL的错误,额外指定lib库,指向刚才的OpenSSL的lib位置即可。