分别编译libcurl和OpenSSL,与使用OpenSSL编译libcurl一样吗?

问题描述

因此,我编写了以下内容

libcurl :x86 /调试,x86 /发行版,x64 /调试,x64 /发行版

OpenSSL :x86 / debug,x86 / release,x64 / debug,x64 / release

现在,我为所有包含libcurl和OpenSSL的配置设置了Visual Studio

我见过有人提到使用OpenSSL编译libcurl。和我做的一样吗?

顺便说一句,如果我运行此命令:

#define CURL_STATICLIB
#include <stdio.h>
#include <curl/curl.h>
#include <iostream>

int main(void)
{
    curl_version_info_data* vinfo = curl_version_info(CURLVERSION_Now);
    if (vinfo->features & CURL_VERSION_SSL)
        std::cout << "yes" << std::endl;
    else
        std::cout << "no" << std::endl;
    return 0;
}

输出

yes

如果我想使用具有SSL支持的libcurl,这是否表示我的设置很好?

另外,如果顺序很重要,我会先编译libcurl,然后再编译OpenSSL。

平台:Windows

工具链:VC ++

解决方法

在Windows上构建libcurl时,您根本不需要OpenSSL。

libcurl默认在Windows上使用时使用Schannel(WinCNG,Windows本机加密)。

如果CURL_VERSION_SSL正在报告true,则说明SSL支持正确启用。