File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / expat / win32 / README.txt
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:00:54 2012 UTC (12 years, 4 months ago) by misho
Branches: expat, MAIN
CVS tags: v2_0_1p0, v2_0_1, HEAD
expat

    1: 
    2: Expat can be built on Windows in three ways: 
    3:   using MS Visual C++ (6.0 or .NET), Borland C++ Builder 5 or Cygwin.
    4: 
    5: * Cygwin:
    6:   This follows the Unix build procedures.
    7: 
    8: * C++ Builder 5:
    9:   Possible with make files in the BCB5 subdirectory.
   10:   Details can be found in the ReadMe file located there.
   11: 
   12: * MS Visual C++ 6:
   13:   Based on the workspace file expat.dsw. The related project
   14:   files (.dsp) are located in the lib subdirectory.
   15: 
   16: * MS Visual Studio .NET 2002, 2003, 2005:
   17:   The VC++ 6 workspace file (expat.dsw) and project files (.dsp)
   18:   can be opened and imported in VS.NET without problems.
   19: 
   20: * All MS C/C++ compilers:
   21:   The output for all projects will be generated in the win32\bin
   22:   directory, intermediate files will be located in project-specific
   23:   subdirectories of win32\tmp.
   24:   
   25: * Creating MinGW dynamic libraries from MS VC++ DLLs:
   26:   
   27:   On the command line, execute these steps:
   28:   pexports libexpat.dll > expat.def
   29:   pexports libexpatw.dll > expatw.def
   30:   dlltool -d expat.def -l libexpat.a
   31:   dlltool -d expatw.def -l libexpatw.a
   32:   
   33:   The *.a files are mingw libraries.
   34: 
   35: * Special note about MS VC++ and runtime libraries:
   36: 
   37:   There are three possible configurations: using the
   38:   single threaded or multithreaded run-time library,
   39:   or using the multi-threaded run-time Dll. That is, 
   40:   one can build three different Expat libraries depending
   41:   on the needs of the application.
   42: 
   43:   Dynamic Linking:
   44: 
   45:   By default the Expat Dlls are built to link statically
   46:   with the multi-threaded run-time library. 
   47:   The libraries are named
   48:   - libexpat(w).dll 
   49:   - libexpat(w).lib (import library)
   50:   The "w" indicates the UTF-16 version of the library.
   51: 
   52:   One rarely uses other versions of the Dll, but they can
   53:   be built easily by specifying a different RTL linkage in
   54:   the IDE on the C/C++ tab under the category Code Generation.
   55: 
   56:   Static Linking:
   57: 
   58:   The libraries should be named like this:
   59:   Single-theaded:     libexpat(w)ML.lib
   60:   Multi-threaded:     libexpat(w)MT.lib
   61:   Multi-threaded Dll: libexpat(w)MD.lib
   62:   The suffixes conform to the compiler switch settings
   63:   /ML, /MT and /MD for MS VC++.
   64:   
   65:   Note: In Visual Studio 2005 (Visual C++ 8.0) and later, the
   66:   single-threaded runtime library is not supported anymore.
   67: 
   68:   By default, the expat-static and expatw-static projects are set up
   69:   to link statically against the multithreaded run-time library,
   70:   so they will build libexpatMT.lib or libexpatwMT.lib files.
   71: 
   72:   To build the other versions of the static library, 
   73:   go to Project - Settings:
   74:   - specify a different RTL linkage on the C/C++ tab
   75:     under the category Code Generation.
   76:   - then, on the Library tab, change the output file name
   77:     accordingly, as described above
   78: 
   79:   An application linking to the static libraries must
   80:   have the global macro XML_STATIC defined.

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>