diff --git a/doc/build-winunix.xml b/doc/build-winunix.xml index 2c8ebdb7f1f9647abd69cb3bc53e76e35a20ddb6..b987367ed0f7d78570a0f7854e4d6be25d1b10c5 100644 --- a/doc/build-winunix.xml +++ b/doc/build-winunix.xml @@ -107,6 +107,33 @@ nmake -f XercesLib.mak "CFG=XercesLib - Win64 Release" CPP=ecl.exe </s3> </s2> + <anchor name="CygWin"/> + <s2 title="Building &XercesCName; on Windows using Cygwin"> + <p><em>Do not jump into the build directly before reading this.</em></p> + + <p>&XercesCName; may be built in the + <jump href="http://www.cygwin.com">Cygwin</jump> environment for use + by Cygwin applications. As with the <jump href="#UNIX">UNIX</jump> + platforms, &XercesCName; on Cygwin uses + <jump href="http://www.gnu.org">GNU</jump> tools. Therefore, with a + couple of notable exceptions, &XercesCName; on Cygwin is built using + the same instructions as the UNIX platforms. The build environment + variable XERCESCROOT must be set to the proper path containing the + &XercesCName; sources and runConfigure must be run with the + "-pcygwin -cgcc -xg++" arguments.</p> + + <p>Note that Cygwin is different from the UNIX platforms in the way + that it finds libraries at run time. While UNIX platforms may use the + environment variable LD_LIBRARY_PATH, Cygwin uses the PATH environment + variable.</p> + + <p>There is an issue with the + <jump href="http://www.gnu.org/software/gcc/gcc.html">gcc/g++</jump> + compiler version 2.95, where C++ exceptions thrown from a dll will + cause the application to crash, regardless of whether there is a "catch" + statement. This bug doesn't occur in tests using gcc 3.1 or 3.2, so it + is recommended that you use gcc 3.1 or higher.</p> + </s2> <anchor name="UNIX"/> <s2 title="Building &XercesCName; on UNIX platforms"> @@ -116,7 +143,7 @@ nmake -f XercesLib.mak "CFG=XercesLib - Win64 Release" CPP=ecl.exe <jump href="http://www.gnu.org/software/make/make.html">GNU Make</jump> to build the system. You must first make sure you have these tools installed on your system before proceeding. - If you don not have required tools, ask your system administrator + If you do not have required tools, ask your system administrator to get them for you. These tools are free under the GNU Public License and may be obtained from the <jump href="http://www.gnu.org">Free Software Foundation</jump>.</p> diff --git a/doc/build.xml b/doc/build.xml index 4cc47575d1af29884acbdb4f56c2a7924fa1b83a..5ab848fe1b05b51792853a054a4ce0799bda4c87 100644 --- a/doc/build.xml +++ b/doc/build.xml @@ -10,6 +10,7 @@ <li><jump href="build-winunix.html#WinNT">Building &XercesCName; on Windows using Microsoft Visual C++</jump></li> <li><jump href="build-winunix.html#WinIntel">Building &XercesCName; 64 bit binary on Windows XP using Intel C++ Compiler</jump></li> <li><jump href="build-winunix.html#WinBorland">Building &XercesCName; on Windows using Borland C++Builder</jump></li> + <li><jump href="build-winunix.html#CygWin">Building &XercesCName; on Windows using Cygwin</jump></li> <li><jump href="build-winunix.html#UNIX">Building &XercesCName; on UNIX platforms</jump></li> <li><jump href="build-winunix.html#UNIX_SingleThread">Building &XercesCName; as a single-threaded library on Unix platforms</jump></li> </ul> diff --git a/doc/install.xml b/doc/install.xml index b5755cc8d133fa1d97c5a5d73774ddeef571e09e..b7ef27d2a6739b8de64a75a7e5e1fefe6faad9d8 100644 --- a/doc/install.xml +++ b/doc/install.xml @@ -124,4 +124,47 @@ setenv XERCESC_NLS_HOME=$XERCESCROOT/lib </s3> </s2> -</s1> \ No newline at end of file + + <s2 title="Cygwin"> + <s3 title="Source distribution"> + <p>The &XercesCName; source is available in the source distribution. + </p> + <p>Install the &XercesCName; source distribution &XercesCSrcInstallDir;.tar.gz by extracting the files + from the compressed archive.</p> +<source> +tar -xvzf &XercesCSrcInstallDir;.tar.gz +</source> + <p>This creates a '&XercesCSrcInstallDir;' sub-directory + containing the &XercesCName; source distribution. </p> + + <p>If you need to build the &XercesCName; source after installation, + please follow the <jump href="build.html">Build Instructions</jump>.</p> + + </s3> + <s3 title="Binary distribution"> + <p>Install the binary distribution by running + <jump href="http://www.cygwin.com">Cygwin</jump> setup.exe. + When you reach the "Packages" step of the Cygwin Setup wizard, + expand the "Devel" category, then click in the "New" column next + to "xerces-c-devel" until it reads "&XercesCVersion;-X".</p> + + <p>This will install the necessary libraries and include files + for the &XercesCName; binary distribution.</p> + + <p>If you wish to run programs linked to &XercesCName; that were + built in the Cygwin environment, you need to add your Cygwin + "bin" directory to your Windows PATH environment variable. + In typical Cygwin installations, the bin directory is in the + Cygwin directory on the drive that windows is installed on. + For instance, if windows is installed to C:\WINNT\System32, + Your Cygwin bin directory may be "C:\cygwin\bin".</p> + + <p>The binary distribution has the built parser library. Sample + executables may be available in a future release on the + Cygwin platform. In the meantime, they may be built from the + source distribution by following the + <jump href="build.html">Build Instructions</jump> for + "Building samples".</p> + </s3> + </s2> +</s1>