For 64-bit Windows, Baseline_Add() is defined in x64dll.asm. You need to figure out why it is not being compiled or linked in.
-------------------------------------------------- From: "Conradaroma" <[email protected]> Sent: Thursday, July 30, 2009 1:45 PM To: "Crypto++ Users" <[email protected]> Subject: Linking error on XP 64 > > 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. -~----------~----~----~----~------~----~------~--~---
