mirror of
https://github.com/cookiengineer/audacity
synced 2025-10-16 07:31:16 +02:00
Add expat 2.1.0 for Windows, Mac, and for local Linux builds (use system expat otherwise)
This commit is contained in:
80
lib-src/expat/win32/README.txt
Normal file
80
lib-src/expat/win32/README.txt
Normal file
@@ -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.
|
Reference in New Issue
Block a user