• Home
Name Date Size #Lines LOC

..--

MANIFEST.txtD03-May-20241.1 KiB2618

README.txtD03-May-20241.9 KiB6144

build_expat_iss.batD03-May-20243.9 KiB8569

expat.issD03-May-20244.1 KiB7063

README.txt

1
2Expat can be built on Windows in two ways:
3  using MS Visual Studio .NET or Cygwin.
4
5* Cygwin:
6  This follows the Unix build procedures.
7
8* MS Visual Studio 2013, 2015 and 2017:
9  Use CMake to generate a solution file for Visual Studio, then use msbuild
10  to compile.  For example:
11
12  md build
13  cd build
14  cmake -G"Visual Studio 15 2017" -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
15  msbuild /m expat.sln
16
17* All MS C/C++ compilers:
18  The output for all projects will be generated in the <CMAKE_BUILD_TYPE>\
19  and xmlwf\<CMAKE_BUILD_TYPE>\ directories.
20
21* Creating MinGW dynamic libraries from MS VC++ DLLs:
22
23  On the command line, execute these steps:
24  pexports libexpat.dll > expat.def
25  pexports libexpatw.dll > expatw.def
26  dlltool -d expat.def -l libexpat.a
27  dlltool -d expatw.def -l libexpatw.a
28
29  The *.a files are mingw libraries.
30
31* Special note about MS VC++ and runtime libraries:
32
33  There are three possible configurations: using the
34  single threaded or multithreaded run-time library,
35  or using the multi-threaded run-time Dll. That is,
36  one can build three different Expat libraries depending
37  on the needs of the application.
38
39  Dynamic Linking:
40
41  By default the Expat Dlls are built to link dynamically
42  with the multi-threaded run-time library.
43  The libraries are named
44  - libexpat(w).dll
45  - libexpat(w).lib (import library)
46  The "w" indicates the UTF-16 version of the library.
47
48  Versions that are statically linking with the multi-threaded run-time library
49  can be built with -DEXPAT_MSVC_STATIC_CRT=ON.
50
51  Static Linking:  (through -DEXPAT_SHARED_LIBS=OFF)
52
53  The libraries should be named like this:
54  Multi-threaded:     libexpat(w)MT.lib
55  Multi-threaded Dll: libexpat(w)MD.lib
56  The suffixes conform to the compiler switch settings
57  /MT and /MD for MS VC++.
58
59  An application linking to the static libraries must
60  have the global macro XML_STATIC defined.
61