paullouisageneau / libdatachannel

C/C++ WebRTC network library featuring Data Channels, Media Transport, and WebSockets
https://libdatachannel.org/
Mozilla Public License 2.0
1.79k stars 361 forks source link

Problems with building library. Need help. #363

Closed Vaveform closed 3 years ago

Vaveform commented 3 years ago

While building library I got errors. I build in Microsoft Windows with Microsoft Visual C++ (Windows 10). I installed OpenSSL. Where can be problem? Do I understand correctly that submodules are installed automatically, and optional dependencies and Openssl are installed separately? May I use this library to build C++ application, which can broadcast video from webcam to the web page? (My colleague Web-developer and he created signaling server based on websockets, web page and found STUN/TURN servers)

[ 75%] Linking CXX shared library datachannel.dll
LINK Pass 1: command "C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1428~1.293\bin\Hostx86\x86\link.exe /nologo @CMakeFiles\datachannel.dir\objects1.rsp /out:datachannel.dll /implib:datachannel.lib /pdb:C:\Users\max\Desktop\C++LibDataChannels\libdatachannel\build\datachannel.pdb /dll /version:0.11 /machine:X86 /debug /INCREMENTAL deps\usrsctp\usrsctplib\usrsctp.lib ws2_32.lib deps\libsrtp\srtp2.lib C:\Program Files\OpenSSL\openssl-1.1\x64\lib\libssl.lib deps\libjuice\juice-static.lib iphlpapi.lib C:\Program Files\OpenSSL\openssl-1.1\x64\lib\libcrypto.lib C:\Program Files\OpenSSL\openssl-1.1\x64\lib\libcrypto.lib ws2_32.lib bcrypt.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:CMakeFiles\datachannel.dir/intermediate.manifest CMakeFiles\datachannel.dir/manifest.res" failed (exit code 1120) with the following output:
   Creating library datachannel.lib and object datachannel.exp
certificate.cpp.obj : error LNK2019: unresolved external symbol _BIO_new referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
dtlstransport.cpp.obj : error LNK2001: unresolved external symbol _BIO_new
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _BIO_new
certificate.cpp.obj : error LNK2019: unresolved external symbol _BIO_free referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _BIO_write referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
dtlstransport.cpp.obj : error LNK2001: unresolved external symbol _BIO_write
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _BIO_write
certificate.cpp.obj : error LNK2019: unresolved external symbol _BIO_s_mem referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
dtlstransport.cpp.obj : error LNK2001: unresolved external symbol _BIO_s_mem
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _BIO_s_mem
certificate.cpp.obj : error LNK2019: unresolved external symbol _BN_to_ASN1_INTEGER referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _EVP_sha256 referenced in function "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl rtc::impl::make_fingerprint(struct x509_st *)" (?make_fingerprint@impl@rtc@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAUx509_st@@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _EVP_PKEY_assign referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _EVP_PKEY_new referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _EVP_PKEY_free referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_sign referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_digest referenced in function "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl rtc::impl::make_fingerprint(struct x509_st *)" (?make_fingerprint@impl@rtc@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAUx509_st@@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_gmtime_adj referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_NAME_new referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_NAME_free referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_new referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_free referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_set_version referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_get_serialNumber referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_set_issuer_name referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_set_subject_name referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_getm_notBefore referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_getm_notAfter referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_set_pubkey referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _X509_NAME_add_entry_by_NID referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _PEM_read_bio_X509 referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _PEM_read_bio_PrivateKey referenced in function "public: __thiscall rtc::impl::Certificate::Certificate(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0Certificate@impl@rtc@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _BN_pseudo_rand referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _BN_new referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _BN_set_word referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _BN_free referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _RSA_new referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _RSA_generate_key_ex referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
certificate.cpp.obj : error LNK2019: unresolved external symbol _RSA_free referenced in function "class std::shared_ptr<class rtc::impl::Certificate> __cdecl rtc::impl::`anonymous namespace'::make_certificate_impl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?make_certificate_impl@?A0xc814e2d9@impl@rtc@@YA?AV?$shared_ptr@VCertificate@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@5@@Z)
dtlssrtptransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_export_keying_material referenced in function "private: virtual void __thiscall rtc::impl::DtlsSrtpTransport::postHandshake(void)" (?postHandshake@DtlsSrtpTransport@impl@rtc@@EAEXXZ)
dtlssrtptransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_tlsext_use_srtp referenced in function "public: __thiscall rtc::impl::DtlsSrtpTransport::DtlsSrtpTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(class std::shared_ptr<struct rtc::Message>)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsSrtpTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXV?$shared_ptr@UMessage@rtc@@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlssrtptransport.cpp.obj : error LNK2019: unresolved external symbol _ERR_get_error referenced in function "public: __thiscall rtc::impl::DtlsSrtpTransport::DtlsSrtpTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(class std::shared_ptr<struct rtc::Message>)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsSrtpTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXV?$shared_ptr@UMessage@rtc@@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tls.cpp.obj : error LNK2001: unresolved external symbol _ERR_get_error
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _CRYPTO_get_ex_new_index referenced in function "public: static void __cdecl rtc::impl::DtlsTransport::Init(void)" (?Init@DtlsTransport@impl@rtc@@SAXXZ)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _CRYPTO_get_ex_new_index
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_set_data referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_get_data referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_set_init referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_set_shutdown referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_ctrl referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _BIO_ctrl
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_meth_new referenced in function "public: static void __cdecl rtc::impl::DtlsTransport::Init(void)" (?Init@DtlsTransport@impl@rtc@@SAXXZ)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_meth_set_write referenced in function "public: static void __cdecl rtc::impl::DtlsTransport::Init(void)" (?Init@DtlsTransport@impl@rtc@@SAXXZ)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_meth_set_ctrl referenced in function "public: static void __cdecl rtc::impl::DtlsTransport::Init(void)" (?Init@DtlsTransport@impl@rtc@@SAXXZ)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_meth_set_create referenced in function "public: static void __cdecl rtc::impl::DtlsTransport::Init(void)" (?Init@DtlsTransport@impl@rtc@@SAXXZ)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_meth_set_destroy referenced in function "public: static void __cdecl rtc::impl::DtlsTransport::Init(void)" (?Init@DtlsTransport@impl@rtc@@SAXXZ)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _EC_KEY_new_by_curve_name referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _EC_KEY_new_by_curve_name
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _EC_KEY_free referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _EC_KEY_free
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _X509_STORE_CTX_get_ex_data referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _X509_STORE_CTX_get_current_cert referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_set_options referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_set_options
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_options referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_set_options
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_set_info_callback referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_set_info_callback
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_is_init_finished referenced in function __catch$??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_is_init_finished
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_set_cipher_list referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_set_cipher_list
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_new referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_new
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_free referenced in function __catch$??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_free
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_bio referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_set_bio
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_set_verify referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_set_verify
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_set_verify_depth referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_use_PrivateKey referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_use_certificate referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_check_private_key referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_new referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_new
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_free referenced in function __catch$??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_free
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_read referenced in function __catch$??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_read
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_write referenced in function __catch$??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_write
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_ctrl referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_ctrl
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_ctrl referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_ctrl
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _DTLS_method referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_do_handshake referenced in function __catch$??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_do_handshake
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_shutdown referenced in function __catch$??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_shutdown
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_alert_desc_string_long referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_alert_desc_string_long
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_connect_state referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_set_connect_state
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_accept_state referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_set_quiet_shutdown referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_CTX_set_quiet_shutdown
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_ex_data referenced in function "public: __thiscall rtc::impl::DtlsTransport::DtlsTransport(class std::shared_ptr<class rtc::impl::IceTransport>,class std::shared_ptr<class rtc::impl::Certificate>,class std::optional<unsigned int>,class std::function<bool __cdecl(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)>,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0DtlsTransport@impl@rtc@@QAE@V?$shared_ptr@VIceTransport@impl@rtc@@@std@@V?$shared_ptr@VCertificate@impl@rtc@@@4@V?$optional@I@4@V?$function@$$A6A_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_set_ex_data
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_get_ex_data referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
tlstransport.cpp.obj : error LNK2001: unresolved external symbol _SSL_get_ex_data
dtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_get_ex_data_X509_STORE_CTX_idx referenced in function __catch$?runRecvLoop@DtlsTransport@impl@rtc@@IAEXXZ$0
tls.cpp.obj : error LNK2019: unresolved external symbol _OPENSSL_init_crypto referenced in function "void __cdecl rtc::openssl::init(void)" (?init@openssl@rtc@@YAXXZ)
tls.cpp.obj : error LNK2019: unresolved external symbol _SSL_get_error referenced in function "bool __cdecl rtc::openssl::check(struct ssl_st *,int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?check@openssl@rtc@@YA_NPAUssl_st@@HABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
tls.cpp.obj : error LNK2019: unresolved external symbol _OPENSSL_init_ssl referenced in function "void __cdecl rtc::openssl::init(void)" (?init@openssl@rtc@@YAXXZ)
tls.cpp.obj : error LNK2019: unresolved external symbol _ERR_error_string_n referenced in function "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl rtc::openssl::error_string(unsigned long)" (?error_string@openssl@rtc@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@K@Z)
tlstransport.cpp.obj : error LNK2019: unresolved external symbol _BIO_read referenced in function __catch$??0TlsTransport@impl@rtc@@QAE@V?$shared_ptr@VTcpTransport@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z$0
tlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set1_host referenced in function "public: __thiscall rtc::impl::TlsTransport::TlsTransport(class std::shared_ptr<class rtc::impl::TcpTransport>,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0TlsTransport@impl@rtc@@QAE@V?$shared_ptr@VTcpTransport@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_hostflags referenced in function "public: __thiscall rtc::impl::TlsTransport::TlsTransport(class std::shared_ptr<class rtc::impl::TcpTransport>,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0TlsTransport@impl@rtc@@QAE@V?$shared_ptr@VTcpTransport@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2019: unresolved external symbol _TLS_method referenced in function "public: __thiscall rtc::impl::TlsTransport::TlsTransport(class std::shared_ptr<class rtc::impl::TcpTransport>,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0TlsTransport@impl@rtc@@QAE@V?$shared_ptr@VTcpTransport@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
tlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_CTX_set_default_verify_paths referenced in function "public: __thiscall rtc::impl::TlsTransport::TlsTransport(class std::shared_ptr<class rtc::impl::TcpTransport>,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0TlsTransport@impl@rtc@@QAE@V?$shared_ptr@VTcpTransport@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
verifiedtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_verify referenced in function "public: __thiscall rtc::impl::VerifiedTlsTransport::VerifiedTlsTransport(class std::shared_ptr<class rtc::impl::TcpTransport>,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0VerifiedTlsTransport@impl@rtc@@QAE@V?$shared_ptr@VTcpTransport@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
verifiedtlstransport.cpp.obj : error LNK2019: unresolved external symbol _SSL_set_verify_depth referenced in function "public: __thiscall rtc::impl::VerifiedTlsTransport::VerifiedTlsTransport(class std::shared_ptr<class rtc::impl::TcpTransport>,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::function<void __cdecl(enum rtc::impl::Transport::State)>)" (??0VerifiedTlsTransport@impl@rtc@@QAE@V?$shared_ptr@VTcpTransport@impl@rtc@@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@V?$function@$$A6AXW4State@Transport@impl@rtc@@@Z@4@@Z)
srtp2.lib(datatypes.c.obj) : error LNK2019: unresolved external symbol _OPENSSL_cleanse referenced in function _octet_string_set_to_zero
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_EncryptInit_ex referenced in function _srtp_aes_icm_openssl_context_init
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_EncryptUpdate referenced in function _srtp_aes_icm_openssl_encrypt
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_EncryptFinal_ex referenced in function _srtp_aes_icm_openssl_encrypt
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_CIPHER_CTX_new referenced in function _srtp_aes_icm_openssl_alloc
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2001: unresolved external symbol _EVP_CIPHER_CTX_new
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_CIPHER_CTX_free referenced in function _srtp_aes_icm_openssl_dealloc
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2001: unresolved external symbol _EVP_CIPHER_CTX_free
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_aes_128_ctr referenced in function _srtp_aes_icm_openssl_context_init
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_aes_192_ctr referenced in function _srtp_aes_icm_openssl_context_init
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_aes_256_ctr referenced in function _srtp_aes_icm_openssl_context_init
srtp2.lib(aes_icm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_CIPHER_CTX_cleanup referenced in function _srtp_aes_icm_openssl_context_init
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2001: unresolved external symbol _EVP_CIPHER_CTX_cleanup
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_Cipher referenced in function _srtp_aes_gcm_openssl_set_aad
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_CipherInit_ex referenced in function _srtp_aes_gcm_openssl_context_init
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_CIPHER_CTX_ctrl referenced in function _srtp_aes_gcm_openssl_set_iv
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_aes_128_gcm referenced in function _srtp_aes_gcm_openssl_context_init
srtp2.lib(aes_gcm_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_aes_256_gcm referenced in function _srtp_aes_gcm_openssl_context_init
srtp2.lib(hmac_ossl.c.obj) : error LNK2019: unresolved external symbol _EVP_sha1 referenced in function _srtp_hmac_init
srtp2.lib(hmac_ossl.c.obj) : error LNK2019: unresolved external symbol _HMAC_CTX_new referenced in function _srtp_hmac_alloc
srtp2.lib(hmac_ossl.c.obj) : error LNK2019: unresolved external symbol _HMAC_CTX_free referenced in function _srtp_hmac_dealloc
srtp2.lib(hmac_ossl.c.obj) : error LNK2019: unresolved external symbol _HMAC_Init_ex referenced in function _srtp_hmac_start
srtp2.lib(hmac_ossl.c.obj) : error LNK2019: unresolved external symbol _HMAC_Update referenced in function _srtp_hmac_update
srtp2.lib(hmac_ossl.c.obj) : error LNK2019: unresolved external symbol _HMAC_Final referenced in function _srtp_hmac_compute
C:\Program Files\OpenSSL\openssl-1.1\x64\lib\libssl.lib : warning LNK4272: library machine type 'x64' conflicts with target machine type 'x86'
C:\Program Files\OpenSSL\openssl-1.1\x64\lib\libcrypto.lib : warning LNK4272: library machine type 'x64' conflicts with target machine type 'x86'
datachannel.dll : fatal error LNK1120: 112 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe"' : return code '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\HostX86\x86\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\HostX86\x86\nmake.exe"' : return code '0x2'
Stop.
paullouisageneau commented 3 years ago

The problem is here:

C:\Program Files\OpenSSL\openssl-1.1\x64\lib\libssl.lib : warning LNK4272: library machine type 'x64' conflicts with target machine type 'x86'
C:\Program Files\OpenSSL\openssl-1.1\x64\lib\libcrypto.lib : warning LNK4272: library machine type 'x64' conflicts with target machine type 'x86'

The OpenSSL build installed in C:\Program Files\OpenSSL\openssl-1.1\x64\lib is for x64 (64 bits), whereas you try to compile libdatachannel for x86 (32 bits). You need to install OpenSSL for Win32 is you want to target 32-bit architectures.

May I use this library to build C++ application, which can broadcast video from webcam to the web page ?

Sure, you should look at the streamer example to see how to send video frames.

Vaveform commented 3 years ago

I am not a good in cmake, can you give me a hint how to build library for x64 in Microsoft Windows with Microsoft Visual C++? When i use commands from building instructions (cmake -B build -G "NMake Makefiles"; cd build; nmake) cmake builds for x86

paullouisageneau commented 3 years ago

Try passing -DCMAKE_GENERATOR_PLATFORM=x64 on the cmake line.

paullouisageneau commented 3 years ago

Is this solved?

Vaveform commented 3 years ago

@paullouisageneau Yes, I built library. I used this commands: cmake -G "Visual Studio 16 2019" -A x64 -S \path_to_source\ -B "build64" cmake --build build64 --config Release