riebl / vanetza

Open-source implementation of the ETSI C-ITS protocol stack
Other
204 stars 156 forks source link

Building on Windows using MSVC #169

Closed khevessy closed 2 years ago

khevessy commented 2 years ago

Hi, I am trying to build Vanetza on windows using Microsoft Visual Studio 17.3.6. I have some problems with the CryptoPP library. When I build as static library, it seems correct. However, when I try to build as shared library, I get following errors:

Severity    Code    Description Project File    Line    Suppression State
Error   LNK2019 unresolved external symbol "void __cdecl CryptoPP::SignaturePairwiseConsistencyTest_FIPS_140_Only(class CryptoPP::PK_Signer const &,class CryptoPP::PK_Verifier const &)" (?SignaturePairwiseConsistencyTest_FIPS_140_Only@CryptoPP@@YAXAEBVPK_Signer@1@AEBVPK_Verifier@1@@Z) referenced in function "public: virtual void __cdecl CryptoPP::DL_PrivateKey_WithSignaturePairwiseConsistencyTest<class CryptoPP::DL_PrivateKey_EC<class CryptoPP::ECP>,struct CryptoPP::ECDSA<class CryptoPP::ECP,class CryptoPP::SHA256> >::GenerateRandom(class CryptoPP::RandomNumberGenerator &,class CryptoPP::NameValuePairs const &)" (?GenerateRandom@?$DL_PrivateKey_WithSignaturePairwiseConsistencyTest@V?$DL_PrivateKey_EC@VECP@CryptoPP@@@CryptoPP@@U?$ECDSA@VECP@CryptoPP@@VSHA256@2@@2@@CryptoPP@@UEAAXAEAVRandomNumberGenerator@2@AEBVNameValuePairs@2@@Z)   security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\naive_certificate_provider.obj   1   
Error   LNK2001 unresolved external symbol "void __cdecl CryptoPP::SignaturePairwiseConsistencyTest_FIPS_140_Only(class CryptoPP::PK_Signer const &,class CryptoPP::PK_Verifier const &)" (?SignaturePairwiseConsistencyTest_FIPS_140_Only@CryptoPP@@YAXAEBVPK_Signer@1@AEBVPK_Verifier@1@@Z)   security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\persistence.obj  1   
Error   LNK2001 unresolved external symbol "void __cdecl CryptoPP::SignaturePairwiseConsistencyTest_FIPS_140_Only(class CryptoPP::PK_Signer const &,class CryptoPP::PK_Verifier const &)" (?SignaturePairwiseConsistencyTest_FIPS_140_Only@CryptoPP@@YAXAEBVPK_Signer@1@AEBVPK_Verifier@1@@Z)   security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\backend_cryptopp.obj 1   
Error   LNK2019 unresolved external symbol "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const CryptoPP::DEFAULT_CHANNEL" (?DEFAULT_CHANNEL@CryptoPP@@3V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@B) referenced in function "public: virtual unsigned __int64 __cdecl CryptoPP::SourceTemplate<class CryptoPP::FileStore>::Pump2(unsigned __int64 &,bool)" (?Pump2@?$SourceTemplate@VFileStore@CryptoPP@@@CryptoPP@@UEAA_KAEA_K_N@Z)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\persistence.obj  1   
Error   LNK1120 2 unresolved externals  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\bin\Release\vanetza_security.dll  1   

I built CryptoPP version 8.7.0 also from Visual Studio using configuration DLL-Import Release. I tried changing define CRYPTOPP_ENABLE_COMPLIANCE_WITH_FIPS_140_2 in fips140.cpp to 1 but it did not help. I also tried to use older version of CryptoPP, 8.3.0, but it also did not help.

Does someone have any idea what could I be doing wrong?

Except this, there are also some problems in RegionalExtensions.h file (it cannot be compiled because of the empty enums) but I managed to somehow resolve those.

Regards, Karel

khevessy commented 2 years ago

Okay, so a little update, when using static version of CryptoPP, there are different errors:

Severity    Code    Description Project File    Line    Suppression State
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(fips140.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(scrypt.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(cryptlib.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(allocate.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(integer.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(queue.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(pubkey.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(gfpcrypt.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(asn.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(iterhash.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(sha.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(dll.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(ecp.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(randpool.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(filters.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(algparam.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(files.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(osrng.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(misc.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(hrtimer.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(hmac.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(salsa.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(pch.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(nbtheory.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(cpu.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(sha_simd.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(rijndael.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(modes.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(gf2n.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(ec2n.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(basecode.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(hex.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(rng.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(mqueue.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(sse_simd.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(rijndael_simd.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(rdtables.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(gf2n_simd.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(sosemanuk.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\cryptlib.lib(serpent.obj)    1   
Error   LNK2005 "public: static unsigned __int64 __cdecl std::ctype<char>::_Getcat(class std::locale::facet const * *,class std::locale const *)" (?_Getcat@?$ctype@D@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z) already defined in cryptlib.lib(scrypt.obj) security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: virtual __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::~basic_streambuf<char,struct std::char_traits<char> >(void)" (??1?$basic_streambuf@DU?$char_traits@D@std@@@std@@UEAA@XZ) already defined in cryptlib.lib(scrypt.obj)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: virtual __cdecl std::basic_ios<char,struct std::char_traits<char> >::~basic_ios<char,struct std::char_traits<char> >(void)" (??1?$basic_ios@DU?$char_traits@D@std@@@std@@UEAA@XZ) already defined in cryptlib.lib(scrypt.obj)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: void __cdecl std::basic_ios<char,struct std::char_traits<char> >::clear(int,bool)" (?clear@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z) already defined in cryptlib.lib(files.obj) security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: virtual __cdecl std::basic_ostream<char,struct std::char_traits<char> >::~basic_ostream<char,struct std::char_traits<char> >(void)" (??1?$basic_ostream@DU?$char_traits@D@std@@@std@@UEAA@XZ) already defined in cryptlib.lib(scrypt.obj)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: void __cdecl std::basic_ostream<char,struct std::char_traits<char> >::_Osfx(void)" (?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ) already defined in cryptlib.lib(scrypt.obj)   security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl std::basic_ostream<char,struct std::char_traits<char> >::flush(void)" (?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ) already defined in cryptlib.lib(scrypt.obj)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: static unsigned __int64 __cdecl std::codecvt<char,char,struct _Mbstatet>::_Getcat(class std::locale::facet const * *,class std::locale const *)" (?_Getcat@?$codecvt@DDU_Mbstatet@@@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z) already defined in cryptlib.lib(files.obj)   security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "protected: virtual __int64 __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::xsgetn(char *,__int64)" (?xsgetn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MEAA_JPEAD_J@Z) already defined in cryptlib.lib(scrypt.obj)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "protected: virtual __int64 __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::xsputn(char const *,__int64)" (?xsputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MEAA_JPEBD_J@Z) already defined in cryptlib.lib(scrypt.obj)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2005 "public: virtual __cdecl std::basic_istream<char,struct std::char_traits<char> >::~basic_istream<char,struct std::char_traits<char> >(void)" (??1?$basic_istream@DU?$char_traits@D@std@@@std@@UEAA@XZ) already defined in cryptlib.lib(files.obj)   security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\msvcprt.lib(MSVCP140.dll)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale0.obj) 1   
Error   LNK2005 "void __cdecl std::_Facet_Register(class std::_Facet_base *)" (?_Facet_Register@std@@YAXPEAV_Facet_base@1@@Z) already defined in msvcprt.lib(locale0_implib.obj)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale0.obj) 1   
Error   LNK2005 "private: static class std::locale::_Locimp * __cdecl std::locale::_Getgloballocale(void)" (?_Getgloballocale@locale@std@@CAPEAV_Locimp@12@XZ) already defined in msvcprt.lib(MSVCP140.dll) security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale0.obj) 1   
Error   LNK2005 "private: static class std::locale::_Locimp * __cdecl std::locale::_Init(bool)" (?_Init@locale@std@@CAPEAV_Locimp@12@_N@Z) already defined in msvcprt.lib(MSVCP140.dll) security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale0.obj) 1   
Error   LNK2005 "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,char const *)" (?_Locinfo_ctor@_Locinfo@std@@SAXPEAV12@PEBD@Z) already defined in msvcprt.lib(MSVCP140.dll) security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale0.obj) 1   
Error   LNK2005 "public: static void __cdecl std::_Locinfo::_Locinfo_dtor(class std::_Locinfo *)" (?_Locinfo_dtor@_Locinfo@std@@SAXPEAV12@@Z) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale0.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale.obj)  1   
Error   LNK2005 "public: __cdecl std::locale::id::operator unsigned __int64(void)" (??Bid@locale@std@@QEAA_KXZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale.obj)  1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale.obj)  1   
Error   LNK2005 "protected: char * __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::_Pninc(void)" (?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IEAAPEADXZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale.obj)  1   
Error   LNK2005 "protected: char * __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::gptr(void)const " (?gptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IEBAPEADXZ) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale.obj)  1   
Error   LNK2005 "public: int __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::sputc(char)" (?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(locale.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(iosptrs.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(wlocale.obj) 1   
Error   LNK2005 "public: __cdecl std::locale::id::operator unsigned __int64(void)" (??Bid@locale@std@@QEAA_KXZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(wlocale.obj) 1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(wlocale.obj) 1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getdays(void)const " (?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(wlocale.obj) 1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getmonths(void)const " (?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(wlocale.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "public: __cdecl std::locale::id::operator unsigned __int64(void)" (??Bid@locale@std@@QEAA_KXZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "protected: char * __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::_Pninc(void)" (?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IEAAPEADXZ) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getdays(void)const " (?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getmonths(void)const " (?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "protected: char * __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::gptr(void)const " (?gptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IEBAPEADXZ) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "public: char __cdecl std::ctype<char>::narrow(char,char)const " (?narrow@?$ctype@D@std@@QEBADDD@Z) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "public: int __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::sputc(char)" (?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z) already defined in msvcprt.lib(MSVCP140.dll)  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2005 "public: char __cdecl std::ctype<char>::widen(char)const " (?widen@?$ctype@D@std@@QEBADD@Z) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlocale.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xstol.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xstoul.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xstoll.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xstoull.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlock.obj)   1   
Error   LNK2005 "public: __cdecl std::_Lockit::_Lockit(int)" (??0_Lockit@std@@QEAA@H@Z) already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlock.obj)   1   
Error   LNK2005 "public: __cdecl std::_Lockit::~_Lockit(void)" (??1_Lockit@std@@QEAA@XZ) already defined in msvcprt.lib(MSVCP140.dll)   security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xlock.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xstrcoll.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xdateord.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xwctomb.obj) 1   
Error   LNK2005 _Getcvt already defined in msvcprt.lib(MSVCP140.dll)    security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xwctomb.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xwcscoll.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xwcsxfrm.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xgetwctype.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xtowlower.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xtowupper.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xstrxfrm.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(xmtx.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(StlCompareStringA.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(StlCompareStringW.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(StlLCMapStringW.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in backend.obj security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\security\libcpmt.lib(StlLCMapStringA.obj) 1   
Error   LNK1169 one or more multiply defined symbols found  security    C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\bin\MinSizeRel\vanetza_security.dll   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(scrypt.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(cryptlib.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(misc.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(allocate.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(hrtimer.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(hmac.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(salsa.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(iterhash.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(sha.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(pch.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(integer.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(queue.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(algparam.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(filters.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(fips140.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(cpu.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(sha_simd.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(dll.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(nbtheory.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(asn.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(pubkey.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(mqueue.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(sosemanuk.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(sse_simd.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(rijndael.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(modes.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(gfpcrypt.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(gf2n.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(ec2n.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(ecp.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(basecode.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(hex.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(rng.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(osrng.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(serpent.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(rijndael_simd.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(rdtables.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(randpool.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cryptlib.lib(gf2n_simd.obj)    1   
Error   LNK2005 "public: virtual __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::~basic_streambuf<char,struct std::char_traits<char> >(void)" (??1?$basic_streambuf@DU?$char_traits@D@std@@@std@@UEAA@XZ) already defined in cryptlib.lib(scrypt.obj)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\msvcprt.lib(MSVCP140.dll)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale0.obj)   1   
Error   LNK2005 "void __cdecl std::_Facet_Register(class std::_Facet_base *)" (?_Facet_Register@std@@YAXPEAV_Facet_base@1@@Z) already defined in msvcprt.lib(locale0_implib.obj)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale0.obj)   1   
Error   LNK2005 "private: static class std::locale::_Locimp * __cdecl std::locale::_Getgloballocale(void)" (?_Getgloballocale@locale@std@@CAPEAV_Locimp@12@XZ) already defined in msvcprt.lib(MSVCP140.dll) geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale0.obj)   1   
Error   LNK2005 "private: static class std::locale::_Locimp * __cdecl std::locale::_Init(bool)" (?_Init@locale@std@@CAPEAV_Locimp@12@_N@Z) already defined in msvcprt.lib(MSVCP140.dll) geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale0.obj)   1   
Error   LNK2005 "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,char const *)" (?_Locinfo_ctor@_Locinfo@std@@SAXPEAV12@PEBD@Z) already defined in msvcprt.lib(MSVCP140.dll) geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale0.obj)   1   
Error   LNK2005 "public: static void __cdecl std::_Locinfo::_Locinfo_dtor(class std::_Locinfo *)" (?_Locinfo_dtor@_Locinfo@std@@SAXPEAV12@@Z) already defined in msvcprt.lib(MSVCP140.dll)  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale0.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale.obj)    1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale.obj)    1   
Error   LNK2005 "protected: char * __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::gptr(void)const " (?gptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IEBAPEADXZ) already defined in msvcprt.lib(MSVCP140.dll)  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(locale.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(iosptrs.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(wlocale.obj)   1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(wlocale.obj)   1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getdays(void)const " (?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(wlocale.obj)   1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getmonths(void)const " (?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(wlocale.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlocale.obj)   1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlocale.obj)   1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getdays(void)const " (?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlocale.obj)   1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getmonths(void)const " (?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlocale.obj)   1   
Error   LNK2005 "protected: char * __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::gptr(void)const " (?gptr@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IEBAPEADXZ) already defined in msvcprt.lib(MSVCP140.dll)  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlocale.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xstol.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xstoul.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xstoll.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xstoull.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlock.obj) 1   
Error   LNK2005 "public: __cdecl std::_Lockit::_Lockit(int)" (??0_Lockit@std@@QEAA@H@Z) already defined in msvcprt.lib(MSVCP140.dll)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlock.obj) 1   
Error   LNK2005 "public: __cdecl std::_Lockit::~_Lockit(void)" (??1_Lockit@std@@QEAA@XZ) already defined in msvcprt.lib(MSVCP140.dll)   geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xlock.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xstrcoll.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xdateord.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xwctomb.obj)   1   
Error   LNK2005 _Getcvt already defined in msvcprt.lib(MSVCP140.dll)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xwctomb.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xwcscoll.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xwcsxfrm.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xgetwctype.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xtowlower.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xtowupper.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xstrxfrm.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(xmtx.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(StlCompareStringA.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(StlCompareStringW.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(StlLCMapStringW.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in address.obj geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\libcpmt.lib(StlLCMapStringA.obj)   1   
Error   LNK2019 unresolved external symbol "class vanetza::MacAddress const vanetza::cBroadcastMacAddress" (?cBroadcastMacAddress@vanetza@@3VMacAddress@1@B) referenced in function "public: __cdecl vanetza::geonet::CbfPacket::CbfPacket(class vanetza::geonet::PendingPacket<class vanetza::geonet::ExtendedPdu<struct vanetza::geonet::GeoBroadcastHeader>,class vanetza::MacAddress const &> &&,class vanetza::MacAddress const &)" (??0CbfPacket@geonet@vanetza@@QEAA@$$QEAV?$PendingPacket@V?$ExtendedPdu@UGeoBroadcastHeader@geonet@vanetza@@@geonet@vanetza@@AEBVMacAddress@3@@12@AEBVMacAddress@2@@Z) geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\cbf_packet_buffer.obj  1   
Error   LNK2001 unresolved external symbol "class vanetza::MacAddress const vanetza::cBroadcastMacAddress" (?cBroadcastMacAddress@vanetza@@3VMacAddress@1@B)    geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\geonet\router.obj 1   
Error   LNK1120 1 unresolved externals  geonet  C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\bin\MinSizeRel\vanetza_geonet.dll 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(scrypt.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(cryptlib.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(misc.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(allocate.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(hrtimer.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(hmac.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(salsa.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(iterhash.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(sha.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(pch.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(integer.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(queue.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(algparam.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(filters.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(fips140.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(cpu.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(sha_simd.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(dll.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(nbtheory.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(asn.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(pubkey.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(mqueue.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(sosemanuk.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(sse_simd.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(rijndael.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(modes.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(gfpcrypt.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(gf2n.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(ec2n.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(ecp.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(basecode.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(hex.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(rng.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(osrng.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(serpent.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(rijndael_simd.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(rdtables.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(randpool.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\cryptlib.lib(gf2n_simd.obj)   1   
Error   LNK2005 "public: virtual __cdecl std::basic_streambuf<char,struct std::char_traits<char> >::~basic_streambuf<char,struct std::char_traits<char> >(void)" (??1?$basic_streambuf@DU?$char_traits@D@std@@@std@@UEAA@XZ) already defined in cryptlib.lib(scrypt.obj)    btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\msvcprt.lib(MSVCP140.dll) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale0.obj)  1   
Error   LNK2005 "void __cdecl std::_Facet_Register(class std::_Facet_base *)" (?_Facet_Register@std@@YAXPEAV_Facet_base@1@@Z) already defined in msvcprt.lib(locale0_implib.obj)    btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale0.obj)  1   
Error   LNK2005 "private: static class std::locale::_Locimp * __cdecl std::locale::_Getgloballocale(void)" (?_Getgloballocale@locale@std@@CAPEAV_Locimp@12@XZ) already defined in msvcprt.lib(MSVCP140.dll) btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale0.obj)  1   
Error   LNK2005 "private: static class std::locale::_Locimp * __cdecl std::locale::_Init(bool)" (?_Init@locale@std@@CAPEAV_Locimp@12@_N@Z) already defined in msvcprt.lib(MSVCP140.dll) btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale0.obj)  1   
Error   LNK2005 "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,char const *)" (?_Locinfo_ctor@_Locinfo@std@@SAXPEAV12@PEBD@Z) already defined in msvcprt.lib(MSVCP140.dll) btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale0.obj)  1   
Error   LNK2005 "public: static void __cdecl std::_Locinfo::_Locinfo_dtor(class std::_Locinfo *)" (?_Locinfo_dtor@_Locinfo@std@@SAXPEAV12@@Z) already defined in msvcprt.lib(MSVCP140.dll)  btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale0.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale.obj)   1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(locale.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(iosptrs.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(wlocale.obj)  1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(wlocale.obj)  1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getdays(void)const " (?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(wlocale.obj)  1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getmonths(void)const " (?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(wlocale.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xlocale.obj)  1   
Error   LNK2005 "public: struct _Cvtvec __cdecl std::_Locinfo::_Getcvt(void)const " (?_Getcvt@_Locinfo@std@@QEBA?AU_Cvtvec@@XZ) already defined in msvcprt.lib(MSVCP140.dll)    btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xlocale.obj)  1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getdays(void)const " (?_W_Getdays@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xlocale.obj)  1   
Error   LNK2005 "public: unsigned short const * __cdecl std::_Locinfo::_W_Getmonths(void)const " (?_W_Getmonths@_Locinfo@std@@QEBAPEBGXZ) already defined in msvcprt.lib(MSVCP140.dll)  btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xlocale.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xstol.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xstoul.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xstoll.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xstoull.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xlock.obj)    1   
Error   LNK2005 "public: __cdecl std::_Lockit::_Lockit(int)" (??0_Lockit@std@@QEAA@H@Z) already defined in msvcprt.lib(MSVCP140.dll)    btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xlock.obj)    1   
Error   LNK2005 "public: __cdecl std::_Lockit::~_Lockit(void)" (??1_Lockit@std@@QEAA@XZ) already defined in msvcprt.lib(MSVCP140.dll)   btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xlock.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xstrcoll.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xdateord.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xwctomb.obj)  1   
Error   LNK2005 _Getcvt already defined in msvcprt.lib(MSVCP140.dll)    btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xwctomb.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xwcscoll.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xwcsxfrm.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xgetwctype.obj)   1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xtowlower.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xtowupper.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xstrxfrm.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(xmtx.obj) 1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(StlCompareStringA.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(StlCompareStringW.obj)    1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(StlLCMapStringW.obj)  1   
Error   LNK2038 mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in data_indication.obj btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\vanetza\btp\libcpmt.lib(StlLCMapStringA.obj)  1   
Error   LNK1169 one or more multiply defined symbols found  btp C:\Users\Karel Hevessy\Downloads\vanetza-master\vanetza-master\shared\bin\MinSizeRel\vanetza_btp.dll    1   

So the library must be dynamic. I think the problem is that I am not building the CryptoPP library correctly, which is maybe a question to ask elsewhere.

khevessy commented 2 years ago

Now I have solved the issue. When building CryptoPP, in Visual Studio, Runtime Library must be changed. Right-click on cryptlib, Properties, C/C++ -> Code Generation -> change Runtime Library from Multi-threaded (/MT) to Multi-threaded DLL (/MD). image

Now linking is without problem. Hopefully this will help someone.

riebl commented 2 years ago

Thanks for highlighting your solution in such great detail @Irisbus ! Much appreciated!

khevessy commented 1 year ago

I am sharing some of my other notes about building Vanetza with MSVC. Maybe someone will find it useful.

Building

Prerequisities:

I recommend to put those libraries in the folder vanetza-deps for easier linking.

  1. Boost
    • Tested with Boost 1.78, 1.80 and 1.83
    • Download and unpack
    • Build command:
      bootstrap
      .\b2
      .\b2 --with-date_time link=shared
      (other libraries if needed - e.g. system)
  2. GeographicLib
    • Tested with GeographicLib 1.52
    • Versions 1.47, 2.1.1 and 2.3 100% do not work (as of 2023-08 not detected by the Vanetza CMake command). Later commit may have fixed that.
    • Download and install .exe installer
  3. CryptoPP
    • Tested with CryptoPP 8.70 and 8.80
    • Download and unpack
    • Install according to its README.txt (open Visual Studio project, build) with one exception: change static runtime library to dynamic (right-click on project -> Properties -> C/C++ -> Code Generation -> Runtime Library -> change Multi-threaded (/MT) to Multi-threaded DLL (/MD); now you can build
    • Note that path must end with ...\CryptoPP\cryptopp\ (default is ...\CryptoPP\cryptopp870) for the vanetza cmake to work properly!

Generate Visual Studio project

Open Visual Studio Developer PowerShell, change to Vanetza directory. Issue those commands (change directories accordingly):

mkdir shared
cd shared
cmake .. -DBOOST_ROOT="C:\vanetza-windows\vanetza-master\vanetza-deps\Boost\boost_1_78_0" \
            -DCryptoPP_INCLUDE_DIR="C:\vanetza-windows\vanetza-master\vanetza-deps\CryptoPP" \
            -DCryptoPP_LIBRARY="C:\vanetza-windows\vanetza-master\vanetza-deps\CryptoPP\cryptopp\x64\Output\Release\cryptlib.lib" \
            -DBUILD_SHARED_LIBS=ON -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=TRUE

Note 1: credit for the last flag

Note 2: command for static libraries:

mkdir build
cd build
cmake .. -DBOOST_ROOT="C:\vanetza-windows\vanetza-master\vanetza-deps\Boost\boost_1_78_0" \
            -DCryptoPP_INCLUDE_DIR="C:\vanetza-windows\vanetza-master\vanetza-deps\CryptoPP" \
            -DCryptoPP_LIBRARY="C:\vanetza-windows\vanetza-master\vanetza-deps\CryptoPP\cryptopp\x64\Output\Release\cryptopp.lib"

Note 3: For Debug build, you must add -DCMAKE_BUILD_TYPE=Debug to the CMake command line.

Now the project should be generated.

Project changes

In order for the project to be build, some changes must be made (everytime the project is generated).

  1. security module does not work with C++14 for some reason. Change compiler to C++17. I am using C++17 for all the projects just to be consistent with the compilation.
  2. Define _USE_MATH_DEFINES in the IDE for asn1_support module (it needs M_E and M_PI identifiers which are not in C standard math.h).
  3. If you encounter errors '(': illegal token on right side of '::' and more (c2589, C2062, C2737, C2059), add NOMINMAX to the project defines (Properties -> C/C++ -> Preprocessor Definitions).
  4. CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS has a bug where it exports some standard library symbols that it shouldn't. Because of that, project cannot be built as there are multiple definitions. This has two possible solutions. First is deleting the symbols' exporting manually from the .def file. Second solution is simpler, you can just enable force output of the linker (it generates DLL/EXE even if it thinks there is some problem). Location of this setting: Properties -> Linker -> General -> Force File Output = Enabled (/FORCE). Note that when this is enabled, you MUST watch for the linker warnings/errors in the console as there can possibly be some problems, you won't notice them and then the run will fail horribly.

Source code changes

In the source code, some changes must be made (those changes are done only one time).

  1. To vanetza/asn1/support/GeneralizedTime.c add following code:

    #if defined(_WIN32)
    // This is a second possibility
    //#undef GMTOFF
    //#define   GMTOFF(tm)  (_get_timezone)
    #undef  GMTOFF
    static long GMTOFF(struct tm a){
        struct tm *lt;
        time_t local_time, gmt_time;
        long zone;
    
        tzset();
        gmt_time = time (NULL);
    
        lt = gmtime(&gmt_time);
    
        local_time = mktime(lt);
        return (gmt_time - local_time);
    }
    #define timegm _mkgmtime
    #define HAVE_TIMEGM
    #endif

    This code is supposedly not used by Vanetza (see #128) so the implementation should not matter.

  2. This is needed for the dynamic library. Exported symbols' (__declspec(dllexport)) addresses cannot be used in a static initializer when imported in another DLL. Namely those structures:

    • NativeInteger.h - asn_DEF_NativeInteger, asn_OP_NativeInteger
    • __OCTET_STRING.h__ - asn_DEF_OCTET_STRING, asn_OP_OCTET_STRING, asn_SPC_OCTET_STRING_specs
    • __constr_SEQUENCE.h__ - asn_OP_SEQUENCE
    • __constr_CHOICE.h__ - asn_OP_CHOICE
    • NULL.h - asn_DEF_NULL
    • constr_SEQUENCE_OF.h - asn_OP_SEQUENCE_OF
    • NativeEnumerated.h - asn_OP_NativeEnumerated
    • __BIT_STRING.h__ - asn_OP_BIT_STRING, asn_SPC_BIT_STRING_specs, asn_DEF_BIT_STRING
    • UTF8String.h - asn_OP_UTF8String
    • INTEGER.h - asn_OP_INTEGER
    • BOOLEAN.h - asn_DEF_BOOLEAN, asn_OP_BOOLEAN
    • IA5String.h - asn_OP_IA5String, asn_DEF_IA5String
    • VisibleString.h - asn_DEF_VisibleString
    • UTF8String.h - asn_DEF_UTF8String
    • NumericString.h - asn_DEF_NumericString, asn_OP_NumericString
    • __OPEN_TYPE.h__ - asn_OP_OPEN_TYPE

    So, my solution is that those symbols stay extern and in each project that needs those symbols, include directly the C files with definition of those symbols.

  3. Same problem as in previous, but in C++ module. Change the following line in vanetza/net/mac_address.hpp:
    • extern const MacAddress cBroadcastMacAddress; ->
      #undef NET_EXPORT
      #ifdef NET_EXPORTS
      #define NET_EXPORT __declspec(dllexport)
      #else
      #define NET_EXPORT __declspec(dllimport)
      #endif
      NET_EXPORT extern const MacAddress cBroadcastMacAddress;
  4. If you see en error _snprintf: is not a member of 'std', go to asn1/support/asn_system.h and change #define snprintf _snprintf to
    #if _MSC_VER < 1900
    #  define snprintf _snprintf
    #endif

    (see here).

  5. Since integrating newer security, those changes are needed:

    /* asn1_security/EtsTs103097Data.h */
    /* change extern asn_TYPE_descriptor_t asn_DEF_EtsiTs103097Data to */
    
    #ifdef asn1_security_EXPORTS
    #define ASN1_SECURITY_EXPORT __declspec(dllexport)
    #else
    #define ASN1_SECURITY_EXPORT __declspec(dllimport)
    #endif
    
    ASN1_SECURITY_EXPORT asn_TYPE_descriptor_t asn_DEF_EtsiTs103097Data;
    /* asn1_security/EtsiTs103097Certificate.h */
    /* change extern asn_TYPE_descriptor_t asn_DEF_EtsiTs103097Certificate; to */
    
    #ifdef asn1_security_EXPORTS
    #define ASN1_SECURITY_EXPORT __declspec(dllexport)
    #else
    #define ASN1_SECURITY_EXPORT __declspec(dllimport)
    #endif
    
    ASN1_SECURITY_EXPORT asn_TYPE_descriptor_t asn_DEF_EtsiTs103097Certificate;
    /* asn1_security/ToBeSignedData.h */
    /* change extern asn_TYPE_descriptor_t asn_DEF_ToBeSignedData; to */
    
    #ifdef asn1_security_EXPORTS
    #define ASN1_SECURITY_EXPORT __declspec(dllexport)
    #else
    #define ASN1_SECURITY_EXPORT __declspec(dllimport)
    #endif
    
    /* Implementation */
    ASN1_SECURITY_EXPORT asn_TYPE_descriptor_t asn_DEF_ToBeSignedData;
    /* asn1_security/CertificateBase.h */
    /* change extern asn_TYPE_descriptor_t asn_DEF_CertificateBase; to */
    
    #ifdef asn1_pki_EXPORTS
    #define ASN1_PKI_EXPORT __declspec(dllexport)
    #else
    #define ASN1_PKI_EXPORT __declspec(dllimport)
    #endif
    
    ASN1_PKI_EXPORT asn_TYPE_descriptor_t asn_DEF_CertificateBase;

    Now you can select the Release configuration and build the project.

Other resources