Hi Thomas,
Thank you for your response. I was starting to wonder whether my messages ever made it to (the rest of) the mailing list... :-)
You describe different "versions" of a Visual Studio project, but I don't quite follow. Some of the versions you mention seem to correspond to different project settings, e.g. single/multi-threaded (code generation), but I don't see any project settings for e.g. building a static/dynamic library from a project. Where in Visual Studio would you select this for an existing project? Is the only way to make a static Xerces library with Visual Studio not to create a new project, and then manually adapt it to mimic the existing XercesLib?
TIA,
Peter Bertelsen
Maconomy R&D
http://www.maconomy.com
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: 14. december 2001 11:16
> To: [EMAIL PROTECTED]
> Subject: Antwort: RE: Xerces as static Win32 library - once again
> [WatchDog checked]
>
>
>
>
> Hi Peter,
>
> I need Xerces as a static library, too. I did it almost the
> same way John
> Clayton described.
>
> There's one point that isn't mentioned yet: with MS Visual
> Studio you can
> create different versions of a project:
> s => Static library (.lib), else dynamic
> link library
> (.dll)
> i => sInglethreaded else multithreaded
> u => Unicode else ansi
> t => sTatic linked runtime else dll linked runtime
>
> Xerces does not distinguish between ansi and unicode, so
> there remain 6
> possible versions (creating a static lib) for it:
> - static multi debug DllRTL => xerces_sd.lib
> - static multi release DllRTL => xerces_s.lib
> - static single debug StaticRTL => xerces_sidt.lib
> - static single release StaticRTL => xerces_sid.lib
> - static multi debug StaticRTL => xerces_sdt.lib
> - static multi release StaticRTL => xerces_st.lib
>
> We use these naming conventions at our company.
>
> In a MS VS Project there are up to 24 versions of a library
> possible. The 6
> above and additionally
> - ansi and unicode
> - static library and dynamic link library
>
> It would be fine if all of these 6 versions above will be
> inside Xerces.
>
> Here's my static .dsp and VCPPDefs.hpp file for Xerces 1.6.0
> (instead of
> the define XML_SINGLEDLL XML_HAS_LIB is defined):
>
> (See attached file: xerces_static.zip)
>
>
> Regards,
> Thomas Rothfu�
>
> [EMAIL PROTECTED]
>
>
>
>
>
>
>
> Peter Michael
>
>
> Bertelsen An:
> "'[EMAIL PROTECTED]'" <[EMAIL PROTECTED]>
>
> <PMB@maconomy. Kopie:
>
>
> dk> Thema: RE: Xerces
> as static Win32 library - once again
>
>
>
>
>
>
>
>
>
>
> 12.12.01 14:08
>
>
> Bitte
>
>
> antworten an
>
>
> xerces-c-dev
>
>
>
>
>
>
>
>
>
>
>
> Due to the lack of any responses, I've found what appears to be a
> workaround myself: do not "disable language extensions" in the Visual
> Studio project for building Xerces as a static library. At
> least this makes
> the aforementioned compile errors go away.
>
> Anybody has a clue why the XercesLib that comes with the Xerces
> distribution has no problems, although it is set to "disable language
> extensions"?
>
> I still wonder why the fix that John Clayton provided is not
> part of 1.6.0.
> It would be quite convenient if something like this was checked into
> Xerces' source base, such that I wouldn't have to start from
> scratch every
> time I download a new version. Moreover, a number of Xerces
> users seems to
> have the same need for building Xerces as a static (Win32)
> library. So,
> what's holding it back?
>
> Regards,
>
>
> Peter Bertelsen
> Maconomy R&D
> http://www.maconomy.com
>
>
> -----Original Message-----
> From: Peter Michael Bertelsen [mailto:[EMAIL PROTECTED]]
> Sent: 11. december 2001 19:52
> To: Xerces-C Mailing List (E-mail)
> Subject: Xerces as static Win32 library - once again
>
>
>
> Hi,
>
>
> I've been trying to follow the guidelines that John Clayton
> gave earlier
> on this topic.
> (See
> http://marc.theaimsgroup.com/?l=xerces-c-dev&m=100590213927031&w=2
> for details.)
> However, when compiling my XercesStaticLib, I keep getting errors in
> winnt.h like these:
>
>
> ...\VC98\INCLUDE\winnt.h(357) : error C2467: illegal declaration of
> anonymous 'struct'
> ...\VC98\INCLUDE\winnt.h(376) : error C2467: illegal declaration of
> anonymous 'struct'
> ...\VC98\INCLUDE\winnt.h(1519) : error C2146: syntax error
> : missing ';'
> before identifier 'PVOID'
> ...\VC98\INCLUDE\winnt.h(1519) : error C2501: '_inline' : missing
> storage-class or type specifiers
> ...\VC98\INCLUDE\winnt.h(1519) : fatal error C1004:
> unexpected end of
> file found
>
>
> Has anybody else experienced something similar? If so, what
> was the cure?
>
>
> BTW, what was the reason for not including John's fix in 1.6.0?
>
>
> TIA,
> Peter Bertelsen
> Maconomy R&D
> http://www.maconomy.com
>
>
>
>
>
>
