Hi, thanks a lot, this would allow me to use the last version of Crypto++, thanks! For now, i will stick with the version 5.5.2, but if needed this is greatly helpful, thanks again!
See you, Luca On Sat, May 9, 2009 at 11:39 PM, trungantran <[email protected]> wrote: > > I also face the same problem with the same compiler as well. > > Debugger told me dlltest failed because AutoSeededX917RNG<AES> commits > an access violation exception, which results in the crash of > X917RNG_KnownAnswerTest, inside its default constructor. > > Further investigation shows that the actual problem comes from sse2- > asm code of the new implementation of CryptoPP::AES but I'm still > unable to figure out what's wrong. > > So here are some workarounds you can consider until someone can > actually fix it: > > a. Using another compiler to build CryptoPP (MSVC90 or even non-SP1 > MSVC80 for example). I'm the one who think this may be a compiler bug > because: [1] release-shared variant still works well; [2] All DLLs I > built using gcc do not produce this problem with SSE2. > > b. Building debug-shared CryptoPP library without SSE2. The easiest > way is to modify config.h as below: > > #ifndef CRYPTOPP_CONFIG_H > #define CRYPTOPP_CONFIG_H > ... > ... > #ifdef CRYPTOPP_EXPORTS > # define CRYPTOPP_IS_DLL > # define CRYPTOPP_DLL __declspec(dllexport) > #elif defined(CRYPTOPP_IMPORTS) > # define CRYPTOPP_IS_DLL > # define CRYPTOPP_DLL __declspec(dllimport) > #else > # define CRYPTOPP_DLL > #endif > > //Add the following lines to config.h > //Begin additional lines > #if (defined(_MSC_VER) && (_MSC_VER == 1400)) \ //MSVC80 > && defined(_DEBUG) \ //debug build > && defined(CRYPTOPP_IS_DLL) \ //shared library > && (CRYPTOPP_VERSION >= 560) //CryptoPP 5.5.2 and earlier doesnt > suffer from this problem > > # ifndef CRYPTOPP_DISABLE_SSE2 > # define CRYPTOPP_DISABLE_SSE2 > # endif > > # if CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE > # undef CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE > # define CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE 0 > # endif > > # if CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE > # undef CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE > # define CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE 0 > # endif > > #endif /* _MSC_VER == 1400 && _DEBUG && CRYPTOPP_IS_DLL && > CRYPTOPP_VERSION >= 560 */ > //End additional lines > ... > ... > #endif /* CRYPTOPP_CONFIG_H */ > > c. Try an alternative (OpenSSL for example). > > Hope this will help. > > Regards, > An > > > On May 4, 9:08 pm, Luca Cappa <[email protected]> wrote: >> Yes, i would have liked it was so easy. The crash happens before >> reaching the main function. >> >> Luca >> >> On Fri, May 1, 2009 at 12:09 AM, Roderick Ford <[email protected]> >> wrote: >> >> You are probably going to have to try to get more out ot the stack >> >> trace...try to set breakpoints at suspicious locations (lots of them) and >> >> start it. All the breakpoints that trigger are before the error, and all >> >> the ones after it are behind the problem. So then you can track it down >> >> further, until you isolate the problem. Good Luck!! > > > --~--~---------~--~----~------------~-------~--~----~ 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. -~----------~----~----~----~------~----~------~--~---
