Erik,
I did as you said but got some linker errors while trying to use
Xerces.lib in my projects:
Linking...
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _strncmp already defined in
libcmt.lib(strncmp.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _isspace already defined in
libcmt.lib(_ctype.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: __errno already defined in
libcmt.lib(dosmap.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _exit already defined in
libcmt.lib(crt0dat.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _atoi already defined in
libcmt.lib(atox.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _strchr already defined in
libcmt.lib(strchr.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: __itoa already defined in
libcmt.lib(xtoa.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: _localeconv already defined in
libcmt.lib(lconv.obj)
MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: __thiscall
type_info::type_info(class type_info const &)"
(??0type_info@@[EMAIL PROTECTED]@@Z) already defined in libcmt.lib(typinfo.obj)
MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: class type_info &
__thiscall type_info::operator=(class type_info const &)"
(??4type_info@@[EMAIL PROTECTED]@@Z) already defined in
libcmt.lib(typinfo.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: __stricmp already defined in
libcmt.lib(stricmp.obj)
MSVCRT.lib(MSVCR71.dll) : error LNK2005: __strnicmp already defined in
libcmt.lib(strnicmp.obj)
LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other
libs; use /NODEFAULTLIB:library
Release/XercesTest.exe : fatal error LNK1169: one or more multiply
defined symbols found
The reason for those errors is that I'm using MFC. When I link them as
shared lib, there are no errors, but I'd like to link MFC as static lib.
Are you using MFC? Is there a hope? Anyone?
Thank you,
Milan
> -----Original Message-----
> From: Erik Rydgren [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, February 17, 2004 10:16 AM
> To: [EMAIL PROTECTED]
> Subject: RE: Linking Xerces C++ statically
>
>
> We link Xerces statically with MS devstudio.
> How to do it:
>
> - First change the project type from dll to static lib.
> - Remove the Win32MsgLoader from the project and add the
> InMemMsgLoader instead.
> - Change the project settings to define
> XML_USE_INMEM_MESSAGELOADER instead of USE_WIN32_MESSAGELOADER.
> - Change the defines for PLATFORM_EXPORT and PLATFORM_IMPORT
> by removing the _declspec(dllexport) and _declspec(dllimport)
> - Rebuild.
>
> Hope I didn't forget anything.
>
> Good luck
> Erik Rydgren
> Aptic AB
> Sweden
>
> > -----Original Message-----
> > From: Chaudhuri, Hiran [mailto:[EMAIL PROTECTED]
> > Sent: den 16 februari 2004 17:51
> > To: [EMAIL PROTECTED]
> > Subject: Linking Xerces C++ statically
> >
> > Hi there.
> >
> > In the docs it is stated that Xerces C++ requires
> xerces-2.4.0.dll (on
> > Windows) to be distributed. Is it possible to have Xerces linked
> > statically so I do not need to distribute the DLL?
> >
> > Hiran
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]