You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I got vs_compat.h-related error messages when building an application including lsquic, but only once I add the library initialization to my code. The messages can be found in my description below.
I use vcpkg for the installation of lsquic, but to me the issue does not seem to be related to that, so I post it here.
To Reproduce
Create a blank C++ project with Visual Studio 2022 (VS) and setup vcpkg for that project. I am using vcpkg with CMake (not MSBuild, so ignore the MSBuild / Visual Studio section). To facilitate the vcpkg-CMake build process when using VS, create a CMakeSettings.json in your projects root and link the vcpkg toolchain file via that, e.g., by inserting the following:
In the CMakeLists.txt I added a find_package(lsquic CONFIG REQUIRED) and linked it with my target using target_link_libraries(main lsquic::lsquic). (You should also mind this issue when installing lsquic via vcpkg)
I also tried linking it statically by "manually" installing it via vcpkg.exe install liblsquic:x64-windows-static. For that, the vcpkg.json must be removed and a set(lsquic_DIR "${PROJECT_SOURCE_DIR}/vcpkg/packages/liblsquic_x64-windows-static/share/lsquic") must be placed in the CMakeLists.txt instead of the find_package(lsquic CONFIG REQUIRED).
In either way, if you simply #include <lsquic.h> in a source file, the project will build without errors. But if you init the library, the build will fail.
#include<lsquic.h>// this alone is okay
#include<iostream>intmain()
{
// including this will failif(0 != lsquic_global_init(LSQUIC_GLOBAL_CLIENT | LSQUIC_GLOBAL_SERVER))
{
std::cout << "Failed" << std::endl;
}
std::cout << "Success" << std::endl;
}
It says there are many type redefinitions. Apparently it has something to do with the vc_compat.h file. I investigated this and found out that the order of including Windows.h and winsock2.h matters. I tried whether it would help switching the order and indeed, the original error message disappeared but was replaced by a second one:
Second error message
>------ Alle erstellen gestartet: Projekt: SDCLibrary, Konfiguration: x64-Release ------
[1/2] Building CXX object tests\QUIC\CMakeFiles\test_QUIC.dir\test_QUIC.cpp.obj
[2/2] Linking CXX executable tests\QUIC\test_QUIC.exe
FAILED: tests/QUIC/test_QUIC.exe
cmd.exe /C "cd . && "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E vs_link_exe --intdir=tests\QUIC\CMakeFiles\test_QUIC.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100190~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100190~1.0\x64\mt.exe --manifests -- C:\PROGRA~1\MICROS~2\2022\COMMUN~1\VC\Tools\MSVC\1433~1.316\bin\Hostx64\x64\link.exe /nologo tests\QUIC\CMakeFiles\test_QUIC.dir\test_QUIC.cpp.obj /out:tests\QUIC\test_QUIC.exe /implib:tests\QUIC\test_QUIC.lib /pdb:tests\QUIC\test_QUIC.pdb /version:0.0 /machine:x64 /INCREMENTAL:NO /subsystem:console ..\..\..\vcpkg\packages\liblsquic_x64-windows-static\lib\lsquic.lib lib\gtest_main.lib lib\gtest.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cmd.exe /C "cd /D C:\Workspace\SDCLibrary\out\build\x64-Release\tests\QUIC && C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noprofile -executionpolicy Bypass -file C:/Workspace/SDCLibrary/vcpkg/scripts/buildsystems/msbuild/applocal.ps1 -targetBinary C:/Workspace/SDCLibrary/out/build/x64-Release/tests/QUIC/test_QUIC.exe -installedDir C:/Workspace/SDCLibrary/vcpkg/installed/x64-windows/bin -OutVariable out""
LINK: command "C:\PROGRA~1\MICROS~2\2022\COMMUN~1\VC\Tools\MSVC\1433~1.316\bin\Hostx64\x64\link.exe /nologo tests\QUIC\CMakeFiles\test_QUIC.dir\test_QUIC.cpp.obj /out:tests\QUIC\test_QUIC.exe /implib:tests\QUIC\test_QUIC.lib /pdb:tests\QUIC\test_QUIC.pdb /version:0.0 /machine:x64 /INCREMENTAL:NO /subsystem:console ..\..\..\vcpkg\packages\liblsquic_x64-windows-static\lib\lsquic.lib lib\gtest_main.lib lib\gtest.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:tests\QUIC\test_QUIC.exe.manifest" failed (exit code 1120) with the following output:
C:\Workspace\SDCLibrary\out\build\x64-Release\LINK : warning LNK4098: Standardbibliothek "LIBCMT" steht in Konflikt mit anderen Bibliotheken; /NODEFAULTLIB:Bibliothek verwenden.
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_util.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp_ntohs" in Funktion "lsquic_sockaddr2str".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_qlog.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp_ntohs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_frame_reader.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp_ntohs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_util.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "inet_ntop" in Funktion "lsquic_sockaddr2str".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_qlog.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "inet_ntop".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_trans_params.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "inet_ntop".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "ERR_get_error" in Funktion "gquic2_esf_encrypt_packet".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "ERR_get_error".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "ERR_error_string" in Funktion "gquic2_esf_encrypt_packet".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "ERR_error_string".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sk_new_null" in Funktion "lsquic_enc_session_get_server_cert_chain".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sk_num" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_qlog.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "sk_num".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_ev_log.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "sk_num".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sk_value" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_qlog.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "sk_value".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_ev_log.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "sk_value".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sk_free" in Funktion "lsquic_enc_session_get_server_cert_chain".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sk_push" in Funktion "lsquic_enc_session_get_server_cert_chain".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_aes_128_ecb" in Funktion "gquic2_gen_hp_mask".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_aes_128_ecb".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_CIPHER_CTX_init" in Funktion "gquic2_gen_hp_mask".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_CIPHER_CTX_init".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_CIPHER_CTX_cleanup" in Funktion "gquic2_gen_hp_mask".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_CIPHER_CTX_cleanup".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_EncryptInit_ex" in Funktion "gquic2_gen_hp_mask".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_EncryptInit_ex".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_EncryptUpdate" in Funktion "gquic2_gen_hp_mask".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_EncryptUpdate".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_sha256" in Funktion "gquic2_init_crypto_ctx".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_sha256".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_sha256".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_tokgen.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_sha256".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_aead_aes_128_gcm" in Funktion "determine_diversification_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_aead_aes_128_gcm".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_engine.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_aead_aes_128_gcm".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_init" in Funktion "determine_diversification_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_engine.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_init".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_cleanup" in Funktion "lsquic_enc_session_destroy".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_cleanup".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_engine.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_cleanup".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_seal" in Funktion "gquic2_esf_encrypt_packet".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_seal".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_seal".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_open" in Funktion "gquic2_esf_decrypt_packet".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_open".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_open".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_full_conn_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_open".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_PKEY_free" in Funktion "handle_chlo_reply_verify_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_PKEY_size" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "BN_free" in Funktion "gen_iasn_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "BN_num_bytes" in Funktion "gen_iasn_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "BN_bn2bin" in Funktion "gen_iasn_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "ASN1_INTEGER_to_BN" in Funktion "gen_iasn_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_NAME_get0_der" in Funktion "gen_iasn_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_free" in Funktion "handle_chlo_reply_verify_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "X509_free".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "i2d_X509" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_qlog.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "i2d_X509".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_get_serialNumber" in Funktion "gen_iasn_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_get_issuer_name" in Funktion "gen_iasn_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_get_pubkey" in Funktion "handle_chlo_reply_verify_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "OPENSSL_free" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "OPENSSL_free".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_qlog.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "OPENSSL_free".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get0_certificate" in Funktion "get_sni_SSL_CTX".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get0_privatekey" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get0_chain_certs" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_set_ex_data" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get_ex_data" in Funktion "gen_rej1_data".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get_ex_new_index" in Funktion "lsquic_handshake_init".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_full_conn_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "RAND_bytes".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_pr_queue.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "RAND_bytes".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crand.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "RAND_bytes".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "RAND_bytes".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "RAND_bytes".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_tokgen.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "RAND_bytes".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_conn.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "RAND_bytes".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_handshake.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "HKDF_extract" in Funktion "gquic2_setup_handshake_keys".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "HKDF_extract".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_tokgen.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "HKDF_extract".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "CRYPTO_chacha_20" in Funktion "gen_hp_mask_chacha20".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sk_deep_copy" in Funktion "iquic_esf_get_server_cert_chain".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_aes_256_ecb" in Funktion "get_crypto_params".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_sha384" in Funktion "get_crypto_params".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_aead_aes_256_gcm" in Funktion "get_crypto_params".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_aead_chacha20_poly1305" in Funktion "get_crypto_params".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_AEAD_key_length" in Funktion "get_crypto_params".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_AEAD_nonce_length" in Funktion "get_crypto_params".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_AEAD_CTX_init_with_direction" in Funktion "init_crypto_ctx".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_up_ref" in Funktion "copy_X509".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "TLS_method" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_new" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_free" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_new" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_free" in Funktion "iquic_esfi_destroy".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_connect_state" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_accept_state" in Funktion "iquic_esfi_init_server".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_do_handshake" in Funktion "iquic_esfi_data_in".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_error" in Funktion "iquic_esfi_handshake".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_set_min_proto_version" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_set_max_proto_version" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get_options" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_options" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_clear_options" in Funktion "iquic_esfi_init_server".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_options" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_cert_cb" in Funktion "iquic_esfi_init_server".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CIPHER_get_id" in Funktion "iquic_esf_keysize".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CIPHER_get_name" in Funktion "iquic_esf_cipher".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CIPHER_get_bits" in Funktion "cache_info".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_in_init" in Funktion "iquic_esfi_in_init".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_peer_cert_chain" in Funktion "iquic_esf_get_server_cert_chain".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_current_cipher" in Funktion "iquic_esf_cipher".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_SESSION_free" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_SESSION_to_bytes" in Funktion "iquic_ssl_sess_to_resume_info".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_SESSION_from_bytes" in Funktion "maybe_create_SSL_SESSION".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_set_session_cache_mode" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_session" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_sess_set_new_cb" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_sess_get_new_cb" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_verify" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_set_custom_verify" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get_verify_mode" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_verify_depth" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_get_verify_depth" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_set_default_verify_paths" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_tlsext_host_name" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_servername" in Funktion "iquic_esf_get_sni".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_SSL_CTX" in Funktion "iquic_lookup_cert".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_alpn_protos" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get0_alpn_selected" in Funktion "set_secret".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_provide_quic_data" in Funktion "iquic_esfi_data_in".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_process_quic_post_handshake" in Funktion "iquic_esfi_shake_stream".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_quic_method" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_quic_transport_params" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_peer_quic_transport_params" in Funktion "get_peer_transport_params".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_quic_use_legacy_codepoint" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_quic_early_data_context" in Funktion "iquic_esfi_init_server".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_CTX_set_early_data_enabled" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_in_early_data" in Funktion "iquic_esfi_handshake".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_SESSION_early_data_capable" in Funktion "maybe_create_SSL_SESSION".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_reset_early_data_reject" in Funktion "iquic_esfi_handshake".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_send_fatal_alert" in Funktion "set_secret".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_set_ex_data" in Funktion "iquic_esfi_create_client".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_ex_data" in Funktion "cry_sm_write_message".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_enc_sess_ietf.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SSL_get_ex_new_index" in Funktion "iquic_esf_global_init".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "BIO_free" in Funktion "lsquic_bio_to_crt".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "BIO_new_mem_buf" in Funktion "lsquic_bio_to_crt".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_MD_CTX_init" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_MD_CTX_cleanup" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_DigestSignInit" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_DigestSignUpdate" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_DigestSignFinal" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_DigestVerifyInit" in Funktion "lsquic_verify_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_DigestVerifyUpdate" in Funktion "lsquic_verify_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_DigestVerifyFinal" in Funktion "lsquic_verify_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_PKEY_CTX_set_rsa_padding" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "EVP_PKEY_CTX_set_rsa_pss_saltlen" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SHA256_Init" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SHA256_Update" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SHA256_Final" in Funktion "lsquic_gen_prof".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "d2i_X509_bio" in Funktion "lsquic_bio_to_crt".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "CRYPTO_library_init" in Funktion "lsquic_crypto_init".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "PEM_read_bio_X509" in Funktion "lsquic_bio_to_crt".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "HMAC" in Funktion "lshkdf_extract".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X25519" in Funktion "lsquic_c255_gen_share_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X25519_public_from_private" in Funktion "lsquic_c255_get_pub_key".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crypto.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "HKDF_expand" in Funktion "lshkdf_expand".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_tokgen.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "HKDF_expand".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_hkdf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "HKDF_expand".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "deflate" in Funktion "lsquic_compress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "deflateEnd" in Funktion "lsquic_compress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "inflate" in Funktion "lsquic_decompress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "inflateEnd" in Funktion "lsquic_decompress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "deflateSetDictionary" in Funktion "lsquic_compress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "deflateBound" in Funktion "lsquic_compress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "inflateSetDictionary" in Funktion "lsquic_decompress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "deflateInit_" in Funktion "lsquic_compress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_crt_compress.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "inflateInit_" in Funktion "lsquic_decompress_certs".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_ev_log.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp_htonl" in Funktion "lsquic_ev_log_generated_http_headers".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_frame_writer.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp_htonl".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_ev_log.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_NAME_oneline" in Funktion "lsquic_ev_log_cert_chain".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_ev_log.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "X509_get_subject_name" in Funktion "lsquic_ev_log_cert_chain".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_frame_reader.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp_ntohl" in Funktion "decode_and_pass_payload".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_frame_writer.c.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp_htons" in Funktion "lsquic_frame_writer_write_settings".
C:\Workspace\SDCLibrary\out\build\x64-Release\lsquic.lib(lsquic_full_conn_ietf.c.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp_htons".
C:\Workspace\SDCLibrary\out\build\x64-Release\tests\QUIC\test_QUIC.exe : fatal error LNK1120: 142 nicht aufgelöste Externe
ninja: build stopped: subcommand failed.
Alle erstellen fehlgeschlagen.
So it says, there are many unresolved external symbols. At this point I'm clueless what I can do about this. I'd be glad if this would be fixed soon!
The text was updated successfully, but these errors were encountered:
I got
vs_compat.h
-related error messages when building an application including lsquic, but only once I add the library initialization to my code. The messages can be found in my description below.I use vcpkg for the installation of lsquic, but to me the issue does not seem to be related to that, so I post it here.
Host Environment
To Reproduce
Create a blank C++ project with Visual Studio 2022 (VS) and setup vcpkg for that project. I am using vcpkg with CMake (not MSBuild, so ignore the MSBuild / Visual Studio section). To facilitate the vcpkg-CMake build process when using VS, create a
CMakeSettings.json
in your projects root and link the vcpkg toolchain file via that, e.g., by inserting the following:CMakeSettings.json
I tried multiple ways of including lsquic via vcpkg. The first try was to include it via the Manifest Mode, using the following manifest file:
vcpkg.json
In the
CMakeLists.txt
I added afind_package(lsquic CONFIG REQUIRED)
and linked it with my target usingtarget_link_libraries(main lsquic::lsquic)
. (You should also mind this issue when installing lsquic via vcpkg)I also tried linking it statically by "manually" installing it via
vcpkg.exe install liblsquic:x64-windows-static
. For that, thevcpkg.json
must be removed and aset(lsquic_DIR "${PROJECT_SOURCE_DIR}/vcpkg/packages/liblsquic_x64-windows-static/share/lsquic")
must be placed in theCMakeLists.txt
instead of thefind_package(lsquic CONFIG REQUIRED)
.In either way, if you simply
#include <lsquic.h>
in a source file, the project will build without errors. But if you init the library, the build will fail.On fail it prints the following message:
First error message
It says there are many type redefinitions. Apparently it has something to do with the
vc_compat.h
file. I investigated this and found out that the order of includingWindows.h
andwinsock2.h
matters. I tried whether it would help switching the order and indeed, the original error message disappeared but was replaced by a second one:Second error message
So it says, there are many unresolved external symbols. At this point I'm clueless what I can do about this. I'd be glad if this would be fixed soon!
The text was updated successfully, but these errors were encountered: