blob: 12fa5a09eb815aacefb64c0850535aac51cebd45 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>ASF: Installing Xalan-C++</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<link rel="stylesheet" type="text/css" href="resources/apache-xalan.css" />
</head>
<!--
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
-->
<body>
<div id="title">
<table class="HdrTitle">
<tbody>
<tr>
<th rowspan="2">
<a href="../index.html">
<img alt="Trademark Logo" src="resources/XalanC-Logo-tm.png" width="190" height="90" />
</a>
</th>
<th text-align="center" width="75%">
<a href="index.html">Xalan-C/C++ Version 1.11</a>
</th>
</tr>
<tr>
<td valign="middle">Installing Xalan-C++</td>
</tr>
</tbody>
</table>
<table class="HdrButtons" align="center" border="1">
<tbody>
<tr>
<td>
<a href="http://www.apache.org">Apache Foundation</a>
</td>
<td>
<a href="http://xalan.apache.org">Xalan Project</a>
</td>
<td>
<a href="http://xerces.apache.org">Xerces Project</a>
</td>
<td>
<a href="http://www.w3.org/TR">Web Consortium</a>
</td>
<td>
<a href="http://www.oasis-open.org/standards">Oasis Open</a>
</td>
</tr>
</tbody>
</table>
</div>
<div id="navLeft">
<ul>
<li>
<a href="resources.html">Resources</a>
<br />
</li>
<li>
<a href="../index.html">Home</a>
</li></ul><hr /><ul>
<li>
<a href="index.html">Xalan-C++ 1.11</a>
</li>
<li>
<a href="whatsnew.html">What's New</a>
</li>
<li>
<a href="license.html">Licenses</a>
</li></ul><hr /><ul>
<li>
<a href="overview.html">Overview</a>
</li>
<li>
<a href="charter.html">Charter</a>
</li></ul><hr /><ul>
<li>
<a href="download.html">Download</a>
</li>
<li>
<a href="buildlibs.html">Build Libraries</a>
</li>
<li>Installation<br />
</li>
<li>
<a href="builddocs.html">Build Documents</a>
</li></ul><hr /><ul>
<li>
<a href="samples.html">Sample Apps</a>
</li>
<li>
<a href="commandline.html">Command Line</a>
</li>
<li>
<a href="usagepatterns.html">Usage Patterns</a>
</li></ul><hr /><ul>
<li>
<a href="programming.html">Programming</a>
</li>
<li>
<a href="extensions.html">Extensions</a>
</li>
<li>
<a href="extensionslib.html">Extensions Library</a>
</li>
<li>
<a href="apiDocs/index.html">API Reference</a>
</li></ul><hr /><ul>
<li>
<a href="faq.html">Xalan-C FAQs</a>
</li></ul><hr /><ul>
<li>
<a href="whatsnew.html#bugs">Bugs</a>
</li>
<li>
<a href="http://xalan.apache.org/old/xalan-j/test/run.html#how-to-run-c">Testing</a>
</li>
<li>
<a href="secureweb.html">Web Security</a>
</li>
</ul>
</div>
<div id="content">
<h2>Installing Xalan-C++</h2>
<ul>
<li>
<a href="#InstSrcPkgs">Install Source Packages</a>
</li>
<li>
<a href="#InstBinPkgs">Install Binary Packages</a>
</li>
<ul>
<li>
<a href="#InstUnixBinPkgs">Install UNIX Binary Packages</a>
</li>
<ul>
<li>
<a href="#ConfigUnixSys">Configure UNIX and Linux Systems</a>
</li>
</ul>
<li>
<a href="#InstWinBinPkgs">Install Windows Binary Packages</a>
</li>
<ul>
<li>
<a href="#ConfWinPath">Configure Windows PATH</a>
</li>
</ul>
</ul>
<li>
<a href="#InstDocPkgs">Install Documentation Package</a>
</li>
</ul>
<a name="InstSrcPkgs"></a>
<p align="right" size="2">
<a href="#content">(top)</a>
</p>
<h3>Install Source Packages</h3>
<p>We have no package managers for source packages.
You just extract the contents of the distribution <b>zip</b> or <b>tar</b> file
into a source directory of your choosing.</p>
<p>The supplemental package building scripts for Linux and UNIX look for the
Xalan-C sources to be found in a directory named <code>
<b>xalan-src</b>
</code>.
The Xerces-C sources are expected to be found in a directory named <code>
<b>xerces-src</b>
</code>.</p>
<p>The supplemental package building scripts for Windows look for the Xalan-C
sources to be found in a directory named <code>
<b>xalan-src-11</b>
</code>
and the Xerces-C sources to be found in a directory named <code>
<b>xerces-src-31</b>
</code>.</p>
<p>When building the Xalan-C library and sample programs,
you also need the necessary C/C++ compiler tools installed.
A working copy of the Xerces-C XML parser library must be available
before you can build the Xalan-C library.
You may build the Xerces-C XML parser library from a source distribution
or use a compatible Xerces-C binary distribution.</p>
<p>Building the User Guide web pages from sources requires a
working Xalan command line program. The Xalan command-line program must support
top-level parameters as strings.</p>
<p>Building the interactive API Reference pages requires a UNIX or Linux
system with a current copy of Doxygen and GraphViz software installed.</p>
<a name="InstBinPkgs"></a>
<p align="right" size="2">
<a href="#content">(top)</a>
</p>
<h3>Install Binary Packages</h3>
<p>The binary packages distributed by <b>zip</b> and <b>tar</b> files are
usually extracted to an install directory of your choosing.
After extracting the contents, and possibly relocating some items,
you may then need to manually perform some minor system configuration.</p>
<a name="InstUnixBinPkgs"></a>
<p align="right" size="2">
<a href="#content">(top)</a>
</p>
<h4>Install UNIX Binary Packages</h4>
<p>Binary packages for Linux and UNIX systems only distribute a <b>release</b> build of binaries.
A debug build of binaries requires you to compile from the sources.
Binary packages for Linux and UNIX systems have the following directory structure.</p>
<table border="1">
<tr>
<td class="content" rowspan="1" colspan="1">./bin/</td>
<td class="content" rowspan="1" colspan="1">Contains the Xalan.exe command line and DLLs</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">./lib/</td>
<td class="content" rowspan="1" colspan="1">Contains the linker libraries</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">./include/xalanc/</td>
<td class="content" rowspan="1" colspan="1">Contains the Xalan-C header files</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">./doc/xalanc-1.11/</td>
<td class="content" rowspan="1" colspan="1">Contains license and other information</td>
</tr>
</table>
<p>Supplemental scripts for Linux and UNIX builds are available in the
source distribution by which binary packages can be made.
The release builds are targeted to <code>${prefix} = /opt/apache/</code>.
The debug buids are targeted to <code>${prefix} = /opt/apache/debug/</code>.</p>
<p>Packages that are released by a UNIX or Linux package manager are
usually installed and configured by the package manager.</p>
<a name="ConfigUnixSys"></a>
<h5>Configure UNIX and Linux Systems</h5>
<p>The Xalan command line executable should be in a directory
accessible by the PATH environment.</p>
<p>The lib directories containing the <code>
<b>libxalan-c.so</b>
</code> and
<code>
<b>libxerces-c.so</b>
</code> objects must be known to the shared object loader.
The system loader environment variable usually takes precedence
over the shared object cache.
I use the shared object cache for installed applications and reserve
the overriding environment for prototype builds and debugging purposes.</p>
<table border="1">
<tr>
<th class="content" rowspan="1" colspan="1">Operating System</th>
<th class="content" rowspan="1" colspan="1">Library Path Environment</th>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">Solaris and Linux</td>
<td class="content" rowspan="1" colspan="1">LD_LIBRARY_PATH</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">BSD/GNU</td>
<td class="content" rowspan="1" colspan="1">LD_LIBRARY_PATH</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">HP-UX</td>
<td class="content" rowspan="1" colspan="1">SHLIB_PATH</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">AIX and BSD</td>
<td class="content" rowspan="1" colspan="1">LIBPATH</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">MacOSX</td>
<td class="content" rowspan="1" colspan="1">DYLD_LIBRARY_PATH</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">Cygwin and MinGW</td>
<td class="content" rowspan="1" colspan="1">PATH</td>
</tr>
</table>
<p>The library search path order is significant.
In many cases, the <code>
<b>/usr/lib</b>
</code>, <code>
<b>/lib</b>
</code>,
and <code>
<b>/usr/local/lib</b>
</code> paths are already cached
in <code>
<b>/etc/ld.so.cache</b>
</code> or included by <code>
<b>/etc/ld.so.conf</b>
</code>.</p>
<a name="InstWinBinPkgs"></a>
<p align="right" size="2">
<a href="#content">(top)</a>
</p>
<h4>Install Windows Binary Packages</h4>
<p>Binary packages for Windows systems include a directory name
related to the Windows Studio platform used to build the product.
The <code>{<b>bin</b>, <b>lib</b>, <b>include</b>, <b>doc</b>}</code> directories
are subdirectories of the platform directory.
Libraries for several Visual Studio development systems
can be installed on the same Windows computer.</p>
<table border="1">
<tr>
<td class="content" rowspan="1" colspan="1">XALANCPKG-11-31-VC71</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2003 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XALANCPKG-11-31-VC80</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2005 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XALANCPKG-11-31-VC90</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2008 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XALANCPKG-11-31-VC100</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2010 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XALANCPKG-11-31-X64-VC80</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2005 (amd64)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XALANCPKG-11-31-X64-VC90</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2008 (amd64)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XALANCPKG-11-31-X64-VC100</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2010 (amd64)</td>
</tr>
</table>
<p>Supplemental scripts for Windows builds are available in the source distribution
by which these above binary packages can be made.
Also included are scripts for building the Xerces-C sources
to the following binary package directories.
These directories are mostly compatible with the required
XALANCROOT and XERCESCROOT environment variables when building your own applications.</p>
<table border="1">
<tr>
<td class="content" rowspan="1" colspan="1">XERCESCPKG-31-VC71</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2003 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XERCESCPKG-31-VC80</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2005 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XERCESCPKG-31-VC90</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2008 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XERCESCPKG-31-VC100</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2010 (Win32)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XERCESCPKG-31-X64-VC80</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2005 (amd64)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XERCESCPKG-31-X64-VC90</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2008 (amd64)</td>
</tr>
<tr>
<td class="content" rowspan="1" colspan="1">XERCESCPKG-31-X64-VC100</td>
<td class="content" rowspan="1" colspan="1">for Visual Studio 2010 (amd64)</td>
</tr>
</table>
<p>Supplemental scripts for Windows builds will also handle the packaging of older
Xalan-C and Xerces-C releases. A similar naming of package directories and
source directories is supported for these older releases.</p>
<table class="note">
<tr>
<td class="noteImg">
<img src="resources/note.gif" alt="note" />
</td>
<td class="noteTxt">You MUST NOT merge the <b>bin</b> and <b>lib</b> directories from packages
compiled with different compilers or different target (Win32 or amd64) platforms.</td>
</tr>
</table>
<p>It is safe to merge the <b>bin</b> directories of compatible Xalan-C and Xerces-C
distributions into a common directory known by the system PATH environment.
You can safely merge the <b>lib</b> directories of Xalan-C and Xerces-C into a common directory.
You can safely merge the <b>include</b> directories of both Xalan-C and Xerces-C
as long as the subdirectories of <b>xalanc</b> and <b>xercesc</b> remain intact.</p>
<a name="ConfWinPath"></a>
<h5>Configure Windows PATH</h5>
<p>Windows systems require that the bin directories be added to the
PATH environment so the library DLL files can be found.
The <b>Xalan.exe</b> program is dynamically linked to these libraries.</p>
<p>You can make the PATH environment a permanent part of the SYSTEM or user login DESKTOP environment.
Any PATH you add to the user login DESKTOP environment gets automatically prepended to the
SYSTEM PATH environment and is effective upon successful user DESKTOP login. If your
computer also starts Windows Services that run on behalf of a user, the user environment
is assumed.</p>
<ol>
<li>Right-Click on the computer icon.</li>
<li>Select Properties</li>
<li>Select Advanced System Settings.</li>
<li>SelectEnvironment Variables.</li>
<li>Add the bin directory to the system PATH environment.</li>
</ol>
<p>The XP, NT, 2000, and 3000 systems allow environment variables to be
set explicitly to individual user accounts.
The Vista, Win-7, and 2008 systems have security administration
that gets in the way of updating individual user environments.</p>
<p>Or you can add the <b>bin</b> directories temporarily to your environment by program control
or invoking a shell command script, or using a command window.
The following command line will append your <code>{target}/<b>bin</b>
</code> directory
to the PATH environment.</p>
<blockquote class="source">
<pre>
set PATH=%PATH%;{target}/bin
</pre>
</blockquote>
<a name="InstDocPkgs"></a>
<p align="right" size="2">
<a href="#content">(top)</a>
</p>
<h3>Install Documentation Packages</h3>
<p>There are actually two distributed documentation packages.
One contains the website pages and full interactive apiDoc images (355+ megabytes).
The other contains the website pages and the apiDoc descriptions (47 megabytes)
without the apiDoc images.
Except for the absence of interactive apiDoc images,
the documentation packages are identical.</p>
<p>The documentation packages are distributed as <b>tar</b> and <b>zip</b> files.
You just extract the contents into a directory that is reachable by your favorite web browser.
The documentation tree starts with the <b>./xalan-c/</b> directory.
The top documentation page is the <b>./xalan-c/index.html</b> file.</p>
<p>The documentation is initially a snapshot of the
<a href="http://xalan.apache.org/xalan-c/index.html">Apache Xalan-C/C++ website</a>
at the time the product was released.</p>
<p align="right" size="2">
<a href="#content">(top)</a>
</p>
</div>
<div id="footer">Copyright © 1999-2012 The Apache Software Foundation<br />Apache, Xalan, and the Feather logo are trademarks of The Apache Software Foundation<div class="small">Web Page created on - Tue 2012-10-09</div>
</div>
</body>
</html>