Когда я пытаюсь использовать curl, я получаю некоторые ошибки. Ошибки:
Severity Code Description Project File Line Suppression State
Error LNK1120 15 unresolved externals Auth C:\Users\ks665\source\repos\Auth\x64\Debug\Auth.exe 1
Error LNK2019 unresolved external symbol __imp_CertAddCertificateContextToStore referenced in function add_certs_to_store Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2001 unresolved external symbol __imp_CertCloseStore Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CertCloseStore referenced in function schannel_connect_step1 Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel.obj) 1
Error LNK2019 unresolved external symbol __imp_CertCreateCertificateChainEngine referenced in function Curl_verify_certificate Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CertEnumCertificatesInStore referenced in function traverse_cert_store Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel.obj) 1
Error LNK2019 unresolved external symbol __imp_CertFindCertificateInStore referenced in function schannel_connect_step1 Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel.obj) 1
Error LNK2019 unresolved external symbol __imp_CertFindExtension referenced in function cert_get_name_string Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CertFreeCertificateChain referenced in function Curl_verify_certificate Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CertFreeCertificateChainEngine referenced in function Curl_verify_certificate Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2001 unresolved external symbol __imp_CertFreeCertificateContext Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CertFreeCertificateContext referenced in function pkp_pin_peer_pubkey Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel.obj) 1
Error LNK2019 unresolved external symbol __imp_CertGetCertificateChain referenced in function Curl_verify_certificate Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CertGetNameStringA referenced in function cert_get_name_string Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2001 unresolved external symbol __imp_CertOpenStore Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CertOpenStore referenced in function schannel_connect_step1 Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel.obj) 1
Error LNK2019 unresolved external symbol __imp_CryptDecodeObjectEx referenced in function cert_get_name_string Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CryptQueryObject referenced in function add_certs_to_store Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel_verify.obj) 1
Error LNK2019 unresolved external symbol __imp_CryptStringToBinaryA referenced in function schannel_connect_step1 Auth C:\Users\ks665\source\repos\Auth\Auth\libcurl_a_debug.lib(schannel.obj) 1
Я следовал нескольким инструкциям на YouTube и до сих пор не добился успеха.
Мой код:
#define CURL_STATICLIB
#include <iostream>
#include <string>
#include "curl/curl.h"
#ifdef _DEBUG
#pragma comment (lib, "curl/libcurl_a_debug.lib")
#else
#pragma comment (lib, "curl/libcurl_a.lib")
#endif
#pragma comment (lib, "Normaliz.lib")
#pragma comment (lib, "Ws2_32.lib")
#pragma comment (lib, "Wldap32.lib")
#pragma comment (lib, "advapi32.lib")
static size_t my_write(void* buffer, size_t size, size_t nmemb, void* param)
{
std::string& text = *static_cast<std::string*>(param);
size_t totalsize = size * nmemb;
text.append(static_cast<char*>(buffer), totalsize);
return totalsize;
}
int main()
{
std::string result;
CURL* curl;
CURLcode res;
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://tcno.co/hello.txt");
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_write);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &result);
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
if (CURLE_OK != res) {
std::cerr << "CURL error: " << res << '\n';
}
}
curl_global_cleanup();
std::cout << result << "\n\n";
}