Hi, so we're trying to integrate crypto++ 5.6 into our development. We use it for very basic purposes.
Now, we develop multi-platform, so we just want to put all the code in our tree and compile it with SCons. When we do this, it works for all of our platforms, except for Windows XP 64. The linking error looks like so: ====== yBelt\AxSigner\build_debug_64_cl-9.0_shared\KeyGenerator.exe / LIBPATH:A xUtilityBelt\3rd\cryptopp-5.6.0\build_debug_64_cl-9.0_shared / LIBPATH:A xUtilityBelt\3rd\cryptopp-5.6.0 /LIBPATH:AxUtilityBelt\3rd\fftw\lib Advapi32.lib setupapi.lib shell32.lib version.lib psapi.lib winmm.lib cryptopp64.lib AxUtili tyBelt\AxSigner\build_debug_64_cl-9.0_shared\source\KeyGenerator.obj Microsoft (R) Incremental Linker Version 8.00.50727.762 Copyright (C) Microsoft Corporation. All rights reserved. cryptopp64.lib(integer.obj) : error LNK2019: unresolved external symbol Baseline _Add referenced in function "int __cdecl CryptoPP::Add(unsigned __int64 *,unsign ed __int64 const *,unsigned __int64 const *,unsigned __int64)" (? a...@cryptopp@@Y ahpea_kpeb_k...@z) cryptopp64.lib(integer.obj) : error LNK2019: unresolved external symbol Baseline _Sub referenced in function "int __cdecl CryptoPP::Subtract(unsigned __int64 *,u nsigned __int64 const *,unsigned __int64 const *,unsigned __int64)" (? subtr...@c ryptoPP@@yahpea_kpeb_k...@z) cryptopp64.lib(sha.obj) : error LNK2019: unresolved external symbol X86_SHA256_H ashBlocks referenced in function "public: virtual unsigned __int64 __cdecl Crypt oPP::SHA256::HashMultipleBlocks(unsigned int const *,unsigned __int64)" (?HashMu ltipleblo...@sha256@CryptoPP@@ueaa_kpeb...@z) cryptopp64.lib(rijndael.obj) : error LNK2019: unresolved external symbol Rijndae l_Enc_AdvancedProcessBlocks referenced in function "public: virtual unsigned __i nt64 __cdecl CryptoPP::Rijndael::Enc::AdvancedProcessBlocks(unsigned char const *,unsigned char const *,unsigned char *,unsigned __int64,unsigned int) const " (? advancedprocessblo...@enc@rijnd...@cryptopp@@ueba_kpebe0peae...@z) AxUtilityBelt\AxSigner\build_debug_64_cl-9.0_shared\KeyGenerator.exe : fatal error LNK1120: 4 unresolved externals scons: *** [AxUtilityBelt\AxSigner\build_debug_64_cl-9.0_shared \KeyGene rator.exe] Error 1120 scons: building terminated because of errors. ====== So, what it looks like to me is that Baseline_Add is not being built correctly for this platform. Of course when I go and look at the code, it's littered with preprocessor macros, so I really have no idea how to go about ensuring that this. Here is the command line for the compilation on integer.cpp, which is file that we need to compile correctly for linking to occur: ============== cl /FoAxUtilityBelt\3rd\cryptopp-5.6.0\build_debug_64_cl-9.0_shared \sou rce\integer.obj /c AxUtilityBelt\3rd\cryptopp-5.6.0\source \integer.cpp /W0 /Zp16 /favor:AMD64 /EHsc /DWIN32 /D_WINDOWS /nologo /GR /DNOMINMAX /Oi / wd4244 /MTd / Od /Z7 /RTC1 /Oi /D_DEBUG /DEXPOSE_AX_GRIND_DLL /TP /W0 /Zp16 / favor:AMD64 /EHsc /DWIN32 /D_WINDOWS /nologo /GR /DNOMINMAX /Oi /wd4244 /MTd /Od /Z7 / RTC1 /Oi /D _DEBUG /DEXPOSE_AX_GRIND_DLL /DBOOST_ALL_NO_LIB / DBOOST_LIB_DIAGNOSTIC /DCUDA /D CRYPTOPP_EXPORTS /IAxUtilityBelt\3rd \cryptopp-5.6.0\build_debug_64_cl-9.0_shared \include /IAxUtilityBelt\3rd\cryptopp-5.6.0\include /IAxUtilityBelt \3rd \cryptopp-5.6.0\build_debug_64_cl-9.0_shared\include /IAxUtilityBelt \3r d\cryptopp-5.6.0\include ================= So, here's hoping there's someone who knows the code and knows which preprocessor defines I am missing, or shouldn't have in order to solve my linker error above. cheers, conrad --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the "Crypto++ Users" Google Group. To unsubscribe, send an email to [email protected]. More information about Crypto++ and this group is available at http://www.cryptopp.com. -~----------~----~----~----~------~----~------~--~---
