使用静态openssl 1.1.1a编译静态curl

问题描述 投票:1回答:1

我有一个C ++项目,编译并链接到静态卷曲库(7.46.0)。我正在升级curl以支持openssl 1.1.1a。使用下面的命令使用静态openssl构建卷曲7.64.0。

nmake /f Makefile.vc mode=static MACHINE=x64 WITH_SSL=static ENABLE_SSPI=no ENABLE_WINSSL=no  SSL_PATH=C:\openssl\1.1.1a\Win5.2_64\release

构建完成并生成libcurl_a.lib。

  1. openssl lib实现是否也应该被引入libcurl_a.lib,因为它是使用静态openssl编译的?

现在,我继续构建链接到静态curl库的C ++应用程序。

在这里我得到多个链接错误。

libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OPENSSL_sk_num referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OPENSSL_sk_value referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OPENSSL_sk_pop_free referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OPENSSL_sk_pop referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OpenSSL_version_num referenced in function Curl_ossl_version 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol CRYPTO_get_ex_new_index referenced in function Curl_ossl_init 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol CRYPTO_malloc referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol CRYPTO_free referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_s_file referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_new referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_free referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_puts referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_ctrl referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_s_mem referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_printf referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BN_print referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_STRING_new referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_STRING_free referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_STRING_length referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_STRING_type referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_STRING_get0_data referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol i2a_ASN1_OBJECT referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol i2t_ASN1_OBJECT referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_STRING_to_UTF8 referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_TIME_print referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ASN1_STRING_print referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_MD_CTX_new referenced in function Curl_ossl_md5sum 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_MD_CTX_free referenced in function Curl_ossl_md5sum 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_DigestInit_ex referenced in function Curl_ossl_md5sum 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_DigestUpdate referenced in function Curl_ossl_md5sum 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_DigestFinal_ex referenced in function Curl_ossl_md5sum 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_md5 referenced in function Curl_ossl_md5sum 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_sha256 referenced in function Curl_ossl_sha256sum 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_PKEY_id referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_PKEY_get0_RSA referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_PKEY_get1_RSA referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_PKEY_get0_DSA referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_PKEY_get0_DH referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_PKEY_free referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol EVP_PKEY_copy_parameters referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RSA_get0_key referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RSA_free referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RSA_flags referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol DH_get0_pqg referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol DH_get0_key referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol DSA_get0_pqg referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol DSA_get0_key referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_STORE_set_flags referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_STORE_add_lookup referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_LOOKUP_file referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_load_crl_file referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_verify_cert_error_string referenced in function ossl_connect_step2 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_signature_print referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol i2d_X509_PUBKEY referenced in function pkp_pin_peer_pubkey 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_free referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get0_signature referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get_version referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get_serialNumber referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get_issuer_name referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get_subject_name referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get0_notBefore referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get0_notAfter referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get_X509_PUBKEY referenced in function pkp_pin_peer_pubkey 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get0_extensions referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get_pubkey referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_NAME_print_ex referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_NAME_get_index_by_NID referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_NAME_get_entry referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_NAME_ENTRY_get_data referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_get_ext_d2i referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_EXTENSION_get_object referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_EXTENSION_get_data referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol PEM_read_bio_X509 referenced in function servercert 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol PEM_write_bio_X509 referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_options referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_msg_callback referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_sess_set_new_cb referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_next_proto_select_cb referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_alpn_protos referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get0_alpn_selected referenced in function ossl_connect_step2 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_keylog_callback referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol BIO_f_ssl referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_cipher_list referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_new referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_free referenced in function ossl_close 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_get_cert_store referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_current_cipher referenced in function ossl_connect_step2 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CIPHER_get_name referenced in function ossl_connect_step2 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_pending referenced in function Curl_ossl_data_pending 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_set_fd referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_set_bio referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_ciphersuites referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_use_PrivateKey_file referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_use_certificate_file referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_use_certificate_chain_file referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_SESSION_free referenced in function Curl_ossl_session_free 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_set_session referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_peer_certificate referenced in function servercert 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_peer_cert_chain referenced in function get_cert_chain 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_verify referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_use_PrivateKey referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_use_certificate referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_default_passwd_cb referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_default_passwd_cb_userdata referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_check_private_key referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_new referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_free referenced in function Curl_ossl_shutdown 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_connect referenced in function ossl_connect_step2 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_read referenced in function Curl_ossl_shutdown 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_write referenced in function ossl_send 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_ctrl referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_ctrl referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_error referenced in function Curl_ossl_shutdown 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol TLS_client_method referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_shutdown referenced in function Curl_ossl_shutdown 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_set_post_handshake_auth referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_alert_desc_string_long referenced in function ssl_tls_trace 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_add_client_CA referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_set_connect_state referenced in function ossl_close 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_certificate referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_privatekey referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_version referenced in function get_ssl_version_txt 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_CTX_load_verify_locations referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_verify_result referenced in function ossl_connect_step2 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_set_ex_data referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol SSL_get_ex_data referenced in function ossl_new_session_cb 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RAND_bytes referenced in function Curl_ossl_random 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RAND_add referenced in function Curl_ossl_seed 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RAND_load_file referenced in function Curl_ossl_seed 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RAND_file_name referenced in function Curl_ossl_seed 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol RAND_status referenced in function Curl_ossl_random 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol CONF_modules_load_file referenced in function Curl_ossl_init 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OPENSSL_load_builtin_modules referenced in function Curl_ossl_init 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol GENERAL_NAMES_free referenced in function verifyhost 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509V3_EXT_print referenced in function X509V3_ext 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol X509_check_issued referenced in function servercert 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ERR_get_error referenced in function Curl_ossl_set_engine 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ERR_peek_error referenced in function ossl_connect_step1 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ERR_clear_error referenced in function Curl_ossl_shutdown 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ERR_error_string_n referenced in function Curl_ossl_set_engine 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol PKCS12_free referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol PKCS12_PBE_add referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol PKCS12_parse referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol d2i_PKCS12_bio referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_response_status referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_response_get1_basic referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_resp_count referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_resp_get0 referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_single_get0_status referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_check_validity referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_BASICRESP_free referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_RESPONSE_free referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol d2i_OCSP_RESPONSE referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_response_status_str referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_cert_status_str referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_crl_reason_str referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol OCSP_basic_verify referenced in function verifystatus 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_get0_user_data referenced in function ssl_ui_reader 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_OpenSSL referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_create_method referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_destroy_method referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_set_opener referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_set_writer referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_set_reader referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_set_closer referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_get_opener referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_get_writer referenced in function ssl_ui_writer 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_get_reader referenced in function ssl_ui_reader 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_method_get_closer referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_get_string_type referenced in function ssl_ui_reader 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_get_input_flags referenced in function ssl_ui_reader 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol UI_set_result referenced in function ssl_ui_reader 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_get_first referenced in function Curl_ossl_engines_list 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_get_next referenced in function Curl_ossl_engines_list 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_by_id referenced in function Curl_ossl_set_engine 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_load_builtin_engines referenced in function Curl_ossl_init 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_ctrl referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_ctrl_cmd referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_free referenced in function Curl_ossl_set_engine 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_get_id referenced in function Curl_ossl_set_engine_default 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_init referenced in function Curl_ossl_set_engine 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_finish referenced in function Curl_ossl_set_engine 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_load_private_key referenced in function cert_stuff 
libcurl_a.lib(openssl.obj) : error LNK2019: unresolved external symbol ENGINE_set_default referenced in function Curl_ossl_set_engine_default 
libcurl_a.lib(md5.obj) : error LNK2001: unresolved external symbol MD5_Init 
libcurl_a.lib(md5.obj) : error LNK2001: unresolved external symbol MD5_Update 
libcurl_a.lib(md5.obj) : error LNK2001: unresolved external symbol MD5_Final 
libcurl_a.lib(idn_win32.obj) : error LNK2019: unresolved external symbol __imp_IdnToAscii referenced in function curl_win32_idn_to_ascii 
libcurl_a.lib(idn_win32.obj) : error LNK2019: unresolved external symbol __imp_IdnToUnicode referenced in function curl_win32_ascii_to_idn 
libcurl_a.lib(curl_ntlm_core.obj) : error LNK2019: unresolved external symbol DES_ecb_encrypt referenced in function Curl_ntlm_core_lm_resp 
libcurl_a.lib(curl_ntlm_core.obj) : error LNK2019: unresolved external symbol DES_set_odd_parity referenced in function Curl_ntlm_core_mk_lm_hash 
libcurl_a.lib(curl_ntlm_core.obj) : error LNK2019: unresolved external symbol DES_set_key referenced in function Curl_ntlm_core_mk_lm_hash 
libcurl_a.lib(curl_ntlm_core.obj) : error LNK2019: unresolved external symbol MD4_Init referenced in function Curl_ntlm_core_mk_nt_hash 
libcurl_a.lib(curl_ntlm_core.obj) : error LNK2019: unresolved external symbol MD4_Update referenced in function Curl_ntlm_core_mk_nt_hash 
libcurl_a.lib(curl_ntlm_core.obj) : error LNK2019: unresolved external symbol MD4_Final referenced in function Curl_ntlm_core_mk_nt_hash 
libcurl_a.lib(sha256.obj) : error LNK2019: unresolved external symbol SHA256_Init referenced in function Curl_sha256it 
libcurl_a.lib(sha256.obj) : error LNK2019: unresolved external symbol SHA256_Update referenced in function Curl_sha256it 
libcurl_a.lib(sha256.obj) : error LNK2019: unresolved external symbol SHA256_Final referenced in function Curl_sha256it 
fatal error LNK1120: 198 unresolved externals

我正在链接到Ws2_32.Lib Crypt32.Lib Wldap32.Lib

  1. 为什么openssl库上的链接错误。它应该用openssl静态lib编译curl并制作成一个lib,对吧?

或者我的理解是错的?有人可以帮我理解这里的问题吗?

c++ curl visual-c++ openssl static-linking
1个回答
0
投票

静态库实际上只是对象文件的存档。更具体地说,它没有像可执行文件或DLL那样链接。

这意味着如果您有一个在应用程序中使用的静态库,则还必须链接其依赖项。

© www.soinside.com 2019 - 2024. All rights reserved.