[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xerces-c-dev
Subject:    Re: WIN64 build on x64 platform using MSVS 2005 Beta
From:       Saurabh.Bhatnagar () blr ! hexaware ! com
Date:       2005-08-23 14:20:03
Message-ID: OF42BE7C6C.205E3575-ON65257066.004D5920-65257066.004DA402 () blr ! hexaware ! com
[Download RAW message or body]

Hi 

I found the cause for this error is that there is no implementation for 
the constructor "InMemMsgLoader(unsigned short const * const)".

It will link fine if we provide a do nothing constructir but as I see for 
other Message Loaders there will be initialisations required.

For now, I am using the WIN32 message loader.

I need to justify it's use instead of the INMEM, can anyone expain the 
difference?

Thanks!

warm regards

Saurabh



Saurabh.Bhatnagar@blr.hexaware.com 
08/23/2005 07:12 PM
Please respond to
c-dev@xerces.apache.org


To
Saurabh.Bhatnagar@blr.hexaware.com
cc
Akshya.Pradhan@blr.hexaware.com, c-dev@xerces.apache.org, 
Leanid.Nazdrynau@oracle.com
Subject
Re: WIN64 build on x64 platform using MSVS 2005 Beta






Hi All

I have been able to build Xerces 64bit with 136 warnings.

I removed the /MACHINE:I386 in the additional preprocessor options. I 
guess one MACHINE is enough.

I used WIN32_MESSAGELOADER above.

As per our requirements we need to use INMEM_MESSAGELOADER. When I specify 

that, I get this error:
1>Linking...
1>   Creating library 
..\..\..\..\..\Build\Win64\VC8\Release/xerces-c_2.lib and object 
..\..\..\..\..\Build\Win64\VC8\Release/xerces-c_2.exp
1>Win32PlatformUtils.obj : error LNK2019: unresolved external symbol 
"public: __cdecl xercesc_2_6::InMemMsgLoader::InMemMsgLoader(unsigned 
short const * const)" (??0InMemMsgLoader@xercesc_2_6@@QEAA@QEBG@Z) 
referenced in function "private: static class xercesc_2_6::XMLMsgLoader * 
__cdecl xercesc_2_6::XMLPlatformUtils::loadAMsgSet(unsigned short const * 
const)" 
(?loadAMsgSet@XMLPlatformUtils@xercesc_2_6@@CAPEAVXMLMsgLoader@2@QEBG@Z)
1>..\..\..\..\..\Build\Win64\VC8\Release\xerces-c_2_6.dll : fatal error 
LNK1120: 1 unresolved externals

Any clues? Where does that symbol exist? I can't find it in the source.

warm regards

Saurabh



Saurabh Bhatnagar/BLR/HTL
08/23/2005 02:14 PM

To
c-dev@xerces.apache.org
cc
Akshya Pradhan/BLR/HTL@HTL, Leanid.Nazdrynau@oracle.com
Subject
Re: WIN64 build on x64 platform using MSVS 2005 Beta





Just to add to the information, here is the Linker command line:

/OUT:"..\..\..\..\..\Build\Win64\VC8\Release\xerces-c_2_6.dll" 
/INCREMENTAL:NO /NOLOGO /LIBPATH:"..\..\..\..\..\Build\Win64\VC8\Release" 
/DLL /MANIFEST 
/MANIFESTFILE:"x64\Release\xerces-c_2_6.dll.intermediate.manifest" 
/PDB:".\..\..\..\..\..\Build\Win64\VC8\Release/xerces-c_2_6.pdb" 
/MAP:".\..\..\..\..\..\Build\Win64\VC8\Release\obj/xerces-c_2_6.map" 
/SUBSYSTEM:WINDOWS /BASE:"0x12000000" 
/IMPLIB:"..\..\..\..\..\Build\Win64\VC8\Release/xerces-c_2.lib" 
/MACHINE:AMD64 /ERRORREPORT:PROMPT ws2_32.lib  kernel32.lib user32.lib 
gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib 
oleaut32.lib uuid.lib odbc32.lib odbccp32.lib

I am using the AMD64 target machine, not x86 as it's found by MSVS!!!

warm regards

Saurabh



Saurabh Bhatnagar/BLR/HTL
08/23/2005 12:51 PM

To
c-dev@xerces.apache.org
cc
Akshya Pradhan/BLR/HTL@HTL, Leanid.Nazdrynau@oracle.com
Subject
WIN64 build on x64 platform using MSVS 2005 Beta





I am getting this fatal error LNK1112

1>..\..\..\..\..\build\win64\vc8\release\obj\Base64.obj : fatal error 
LNK1112: module machine type 'x64' conflicts with target machine type 
'X86'


My command line in VC++ 8 looks like

/O1 /Ob2 /I "..\..\..\..\..\src" /D "NDEBUG" /D "PLATFORM_WIN64" /D 
"_CRTDBG_MAP_ALLOC" /D "PROJ_XMLPARSER" /D "PROJ_XMLUTIL" /D 
"PROJ_PARSERS" /D "PROJ_SAX4C" /D "PROJ_SAX2" /D "PROJ_DOM" /D 
"PROJ_VALIDATORS" /D "XML_SINGLEDLL" /D "_WINDOWS" /D 
"XML_USE_WIN32_TRANSCODER" /D "XML_USE_INMEM_MESSAGELOADER" /D 
"XML_USE_NETACCESSOR_WINSOCK" /D "WIN64" /D "_VC80_UPGRADE=0x0700" /D 
"_WINDLL" /GF /FD /EHsc /MD /Zc:wchar_t- 
/Fp".\..\..\..\..\..\Build\Win64\VC8\Release\obj/XercesLib.pch" 
/Fo".\..\..\..\..\..\Build\Win64\VC8\Release\obj/" 
/Fd".\..\..\..\..\..\Build\Win64\VC8\Release\obj/" /W3 /nologo /c /TP 
/errorReport:prompt

The WIN32, what I got from the SLN file has beenn updated with 
""XML_USE_WIN32_TRANSCODER" - is there ""XML_USE_WIN64_TRANSCODER"??
and I have replaced "PLATFORM_WIN32" with "PLATFORM_WIN64" and added 
"WIN64".

Please give me the proper steps to build.


warm regards

Saurabh




---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org




---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic