On Sunday, October 11, 2015 at 12:45:12 PM UTC-4, jean-pierre.muench wrote: > > Well, ... I already found the issue. > > It's a project conversion error that removes the custom build steps for > our .asm files. This makes the .asm not being assembled and integrated into > the library, resulting in a linker failure as the necessary code is > missing. This only affects x64 as x86 uses inline assembly. And it only > occurred when migrating to VS2015, 2010 and 2012 worked just fine. > > You'll have to forgive my ignorance here....
Below is what I see after a VCUpgrade and subsequent build. It appears the custom build steps are present for x64. When I check for the symbol using dumpbin: C:\Program Files (x86)\Microsoft Visual Studio 11.0>cd C:\...\cryptopp-5.6.3-vs2012\x64\Output\Debug C:\...\cryptopp-5.6.3-vs2012\x64\Output\Debug>dumpbin /SYMBOLS cryptlib.lib | findstr "DEFAULT_CHANNEL" 1874 00000000 SECT71D notype External | ?DEFAULT_CHANNEL@CryptoPP@@3V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@B (class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const CryptoPP::DEFAULT_CHANNEL) ... C:\...\cryptopp-5.6.3-vs2012\x64\Output\Debug>dumpbin /SYMBOLS cryptlib.lib | findstr "rdtable" 00E 00000000 UNDEF notype External | ?Te@rdtable@CryptoPP@@3PA_KA (unsigned __int64 * CryptoPP::rdtable::Te) How exactly, did you resolve the issue? Jeff ---------- 1>------ Build started: Project: cryptlib, Configuration: Debug x64 ------ 1>Build started 10/12/2015 12:10:40 AM. 1>PrepareForBuild: 1> Creating directory "x64\Output\Debug\". 1>InitializeBuildStatus: 1> Creating "x64\Output\Temp\Debug\cryptlib.unsuccessfulbuild" because "AlwaysCreate" was specified. 1>CustomBuild: 1> Performing Custom Build Tools 1> Performing Custom Build Tools 1> Assembling: C:\Users\...\Desktop\cryptopp-5.6.3-vs2012\x64dll.asm 1> Performing Custom Build Tools 1> Assembling: C:\Users\...\Desktop\cryptopp-5.6.3-vs2012\x64masm.asm ... 1>Lib: 1> cryptlib.vcxproj -> C:\Users\...\Desktop\cryptopp-5.6.3-vs2012\x64\Output\Debug\cryptlib.lib 1>FinalizeBuildStatus: 1> Deleting file "x64\Output\Temp\Debug\cryptlib.unsuccessfulbuild". 1> Touching "x64\Output\Temp\Debug\cryptlib.lastbuildstate". 1> 1>Build succeeded. 2>------ Build started: Project: cryptest, Configuration: Debug x64 ------ 2>Build started 10/12/2015 12:11:23 AM. 2>InitializeBuildStatus: ... 2> Generating Code... 2>cryptlib.lib(x64dll.obj) : error LNK2019: unresolved external symbol "unsigned __int64 * CryptoPP::rdtable::Te" (?Te@rdtable@CryptoPP@@3PA_KA) referenced in function Rijndael_Enc_AdvancedProcessBlocks 2>x64\Output\Debug\cryptest.exe : fatal error LNK1120: 1 unresolved externals -- -- 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. --- You received this message because you are subscribed to the Google Groups "Crypto++ Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
