aboutsummaryrefslogtreecommitdiff
path: root/expat/win32/README.txt
diff options
context:
space:
mode:
Diffstat (limited to 'expat/win32/README.txt')
-rw-r--r--expat/win32/README.txt80
1 files changed, 80 insertions, 0 deletions
diff --git a/expat/win32/README.txt b/expat/win32/README.txt
new file mode 100644
index 000000000..e3702ae62
--- /dev/null
+++ b/expat/win32/README.txt
@@ -0,0 +1,80 @@
+
+Expat can be built on Windows in three ways:
+ using MS Visual C++ (6.0 or .NET), Borland C++ Builder 5 or Cygwin.
+
+* Cygwin:
+ This follows the Unix build procedures.
+
+* C++ Builder 5:
+ Possible with make files in the BCB5 subdirectory.
+ Details can be found in the ReadMe file located there.
+
+* MS Visual C++ 6:
+ Based on the workspace file expat.dsw. The related project
+ files (.dsp) are located in the lib subdirectory.
+
+* MS Visual Studio .NET 2002, 2003, 2005, 2008, 2010:
+ The VC++ 6 workspace file (expat.dsw) and project files (.dsp)
+ can be opened and imported in VS.NET without problems.
+
+* All MS C/C++ compilers:
+ The output for all projects will be generated in the win32\bin
+ directory, intermediate files will be located in project-specific
+ subdirectories of win32\tmp.
+
+* Creating MinGW dynamic libraries from MS VC++ DLLs:
+
+ On the command line, execute these steps:
+ pexports libexpat.dll > expat.def
+ pexports libexpatw.dll > expatw.def
+ dlltool -d expat.def -l libexpat.a
+ dlltool -d expatw.def -l libexpatw.a
+
+ The *.a files are mingw libraries.
+
+* Special note about MS VC++ and runtime libraries:
+
+ There are three possible configurations: using the
+ single threaded or multithreaded run-time library,
+ or using the multi-threaded run-time Dll. That is,
+ one can build three different Expat libraries depending
+ on the needs of the application.
+
+ Dynamic Linking:
+
+ By default the Expat Dlls are built to link statically
+ with the multi-threaded run-time library.
+ The libraries are named
+ - libexpat(w).dll
+ - libexpat(w).lib (import library)
+ The "w" indicates the UTF-16 version of the library.
+
+ One rarely uses other versions of the Dll, but they can
+ be built easily by specifying a different RTL linkage in
+ the IDE on the C/C++ tab under the category Code Generation.
+
+ Static Linking:
+
+ The libraries should be named like this:
+ Single-theaded: libexpat(w)ML.lib
+ Multi-threaded: libexpat(w)MT.lib
+ Multi-threaded Dll: libexpat(w)MD.lib
+ The suffixes conform to the compiler switch settings
+ /ML, /MT and /MD for MS VC++.
+
+ Note: In Visual Studio 2005 (Visual C++ 8.0) and later, the
+ single-threaded runtime library is not supported anymore.
+
+ By default, the expat-static and expatw-static projects are set up
+ to link statically against the multithreaded run-time library,
+ so they will build libexpatMT.lib or libexpatwMT.lib files.
+
+ To build the other versions of the static library,
+ go to Project - Settings:
+ - specify a different RTL linkage on the C/C++ tab
+ under the category Code Generation.
+ - then, on the Library tab, change the output file name
+ accordingly, as described above
+
+ An application linking to the static libraries must
+ have the global macro XML_STATIC defined.