blob: 6cc45f2b15d96f3c9f914b79a477acb285ca782d [file] [log] [blame]
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Building Xalan-C++</TITLE></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG alt="logo" border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG alt="line" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG alt="right" border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="graphics/build_instruct-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" height="20" valign="top" width="168"><IMG alt="bottom" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xalan.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xalan.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG alt="join" border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Xalan-C++ 1.10" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="overview.html" onMouseOut="rolloverOff('side-overview');" onMouseOver="rolloverOn('side-overview');"><IMG alt="Overview" border="0" height="12" hspace="0" name="side-overview" onLoad="rolloverLoad('side-overview','graphics/overview-label-2.jpg','graphics/overview-label-3.jpg');" src="graphics/overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="charter.html" onMouseOut="rolloverOff('side-charter');" onMouseOver="rolloverOn('side-charter');"><IMG alt="Charter" border="0" height="12" hspace="0" name="side-charter" onLoad="rolloverLoad('side-charter','graphics/charter-label-2.jpg','graphics/charter-label-3.jpg');" src="graphics/charter-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="whatsnew.html" onMouseOut="rolloverOff('side-whatsnew');" onMouseOver="rolloverOn('side-whatsnew');"><IMG alt="What's New" border="0" height="12" hspace="0" name="side-whatsnew" onLoad="rolloverLoad('side-whatsnew','graphics/whatsnew-label-2.jpg','graphics/whatsnew-label-3.jpg');" src="graphics/whatsnew-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="download.html" onMouseOut="rolloverOff('side-download');" onMouseOver="rolloverOn('side-download');"><IMG alt="Downloads" border="0" height="12" hspace="0" name="side-download" onLoad="rolloverLoad('side-download','graphics/download-label-2.jpg','graphics/download-label-3.jpg');" src="graphics/download-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="Build Instructions" border="0" height="12" hspace="0" src="graphics/build_instruct-label-1.jpg" vspace="0" width="120"><BR>
<A href="install.html" onMouseOut="rolloverOff('side-install');" onMouseOver="rolloverOn('side-install');"><IMG alt="Installation" border="0" height="12" hspace="0" name="side-install" onLoad="rolloverLoad('side-install','graphics/install-label-2.jpg','graphics/install-label-3.jpg');" src="graphics/install-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="samples.html" onMouseOut="rolloverOff('side-samples');" onMouseOver="rolloverOn('side-samples');"><IMG alt="Sample Apps" border="0" height="12" hspace="0" name="side-samples" onLoad="rolloverLoad('side-samples','graphics/samples-label-2.jpg','graphics/samples-label-3.jpg');" src="graphics/samples-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="commandline.html" onMouseOut="rolloverOff('side-commandline');" onMouseOver="rolloverOn('side-commandline');"><IMG alt="Command Line" border="0" height="12" hspace="0" name="side-commandline" onLoad="rolloverLoad('side-commandline','graphics/commandline-label-2.jpg','graphics/commandline-label-3.jpg');" src="graphics/commandline-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="usagepatterns.html" onMouseOut="rolloverOff('side-usagepatterns');" onMouseOver="rolloverOn('side-usagepatterns');"><IMG alt="Usage Patterns" border="0" height="12" hspace="0" name="side-usagepatterns" onLoad="rolloverLoad('side-usagepatterns','graphics/usagepatterns-label-2.jpg','graphics/usagepatterns-label-3.jpg');" src="graphics/usagepatterns-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="programming.html" onMouseOut="rolloverOff('side-programming');" onMouseOver="rolloverOn('side-programming');"><IMG alt="Programming" border="0" height="12" hspace="0" name="side-programming" onLoad="rolloverLoad('side-programming','graphics/programming-label-2.jpg','graphics/programming-label-3.jpg');" src="graphics/programming-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="extensions.html" onMouseOut="rolloverOff('side-extensions');" onMouseOver="rolloverOn('side-extensions');"><IMG alt="Extensions" border="0" height="12" hspace="0" name="side-extensions" onLoad="rolloverLoad('side-extensions','graphics/extensions-label-2.jpg','graphics/extensions-label-3.jpg');" src="graphics/extensions-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="extensionslib.html" onMouseOut="rolloverOff('side-extensionslib');" onMouseOver="rolloverOn('side-extensionslib');"><IMG alt="Extensions Library" border="0" height="12" hspace="0" name="side-extensionslib" onLoad="rolloverLoad('side-extensionslib','graphics/extensionslib-label-2.jpg','graphics/extensionslib-label-3.jpg');" src="graphics/extensionslib-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="apiDocs/index.html" onMouseOut="rolloverOff('side-ext-36');" onMouseOver="rolloverOn('side-ext-36');"><IMG alt="API Reference" border="0" height="12" hspace="0" name="side-ext-36" onLoad="rolloverLoad('side-ext-36','graphics/ext-36-label-2.jpg','graphics/ext-36-label-3.jpg');" src="graphics/ext-36-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="faq.html" onMouseOut="rolloverOff('side-faq');" onMouseOver="rolloverOn('side-faq');"><IMG alt="FAQs" border="0" height="12" hspace="0" name="side-faq" onLoad="rolloverLoad('side-faq','graphics/faq-label-2.jpg','graphics/faq-label-3.jpg');" src="graphics/faq-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="separator" border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="whatsnew.html#bugs" onMouseOut="rolloverOff('side-ext-44');" onMouseOver="rolloverOn('side-ext-44');"><IMG alt="Bugs" border="0" height="12" hspace="0" name="side-ext-44" onLoad="rolloverLoad('side-ext-44','graphics/ext-44-label-2.jpg','graphics/ext-44-label-3.jpg');" src="graphics/ext-44-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="./test/run.html#how-to-run-c" onMouseOut="rolloverOff('side-ext-46');" onMouseOver="rolloverOn('side-ext-46');"><IMG alt="Testing" border="0" height="12" hspace="0" name="side-ext-46" onLoad="rolloverLoad('side-ext-46','graphics/ext-46-label-2.jpg','graphics/ext-46-label-3.jpg');" src="graphics/ext-46-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="close" border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD>
<A name="build"><!--anchor--></A>
<P>This page was created for users who have downloaded the source distribution of Xalan-C++ and are looking for guidance on how to
build the Xalan-C++ libraries themselves.</P>
<UL>
<LI><A href="#rebuild">Rebuilding Xalan-C++</A></LI>
<LI><A href="samples.html#rebuilding">Rebuilding sample applications</A></LI>
</UL>
<A name="rebuild"><!--anchor--></A>
<TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Rebuilding Xalan-C++</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<UL>
<LI><A href="#needed">What you need from the distributions</A></LI>
<LI><A href="#win32">Steps for doing a Windows Build</A></LI>
<LI><A href="#dotNet">Steps for doing a Windows Build with Visual Studio .NET</A></LI>
<LI><A href="#unix">Steps for doing a UNIX build</A></LI>
<LI><A href="#locale">Steps for doing a Build with Message Localization Support</A></LI>
</UL>
</FONT></TD></TR></TABLE><BR>
<A name="needed"><!--anchor--></A>
<TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>What you need from the distributions</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<P>To rebuild Xalan-C++, you need the Xalan-C++ source files, the Xerces-C++ header files, and for Windows the Xerces-C++ .lib file.
If you want to rebuild with the ICU, you will need to download the ICU source package to build the ICU libraries. </P>
<TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>You can also download Xalan-C++ source distributions from <A href="http://archive.apache.org/dist/xml/xalan-c" target="_top">Xalan-C downloads</A>: Xalan-C_1_10_0-src.zip
and Xalan-C_1_10_0-src.tar.gz. Xerces-C++ source distributions are available from <A href="http://archive.apache.org/dist/xml/xerces-c/" target="_top">Xerces-C downloads</A>:
xerces-c2_7_0-src.zip and xerces-c2_7_0-src.tar.gz.</I></FONT></TD></TR></TABLE>
<P>Keep in mind that at any given point in time the Xalan-C++ and Xerces-C++ source trees in the Apache XML repository may not
be consistent. When we release a version of Xalan-C++ we certify that it is compatible with a given version of Xerces-C++. To
be safe, use the Xerces distributions that we certify as compatible. Reminder: Xalan-C++ version 1.10 is compatible with
Xerces-C++ version 2.7.0.</P>
<P>For information on using the <A href="http://oss.software.ibm.com/icu/index.html" target="_top">International Components for Unicode (ICU)</A>, see <A href="usagepatterns.html#icu">Using the ICU</A>.
The recommended version of ICU for Xalan-C++ version 1.10 is International Components for Unicode(ICU) version 3.2. You may be able to use newer ICU releases as they appear.</P>
</FONT></TD></TR></TABLE><BR>
<A name="win32"><!--anchor--></A>
<TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Steps for doing a Windows build</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<P>To build Xalan-C++ on Windows, you need Xerces-C++ and a C++ compiler for Windows (either MS Visual C++ 6.0 installed with Service
Pack 5 for Visual C++ OR Visual Studio .NET).</P>
<P>If you are using a different Service Pack, you must rebuild all of the Xerces and Xalan binaries.</P>
<P>Before you do the following, be sure you have <A href="install.html#windowspath">provided Visual C++ the paths to
the Xerces headers and libraries</A>.</P>
<OL>
<LI>Create the XERCESCROOT environment variable and set it to the path of the root directory of Xerces-C++.</LI>
<LI>If you are building with ICU, create the ICUROOT environment variable and set it the the path of the ICU root directory.</LI>
<LI>Use Visual C++ to open the Xalan workspace (.dsw) from the xml-xalan\c\Projects\Win32\VC6. If you are building with
ICU, then use XalanICU.dsw. Otherwise, open the Xalan.dsw workspace.<BR><BR>
<TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>You may need to restart Visual Studio .NET in order for ICUROOT and XERCESCROOT to take effect.</I></FONT></TD></TR></TABLE>
<BR>
As an alternative method to the steps described above, would be to go to &quot;Tools&quot; and select &quot;Options&quot; from Visual C++. From the
&quot;Options&quot; window, click on the &quot;Directories&quot; tab and do the following:
<OL>
<LI>Show Directories for: Executable files. Add the Xerces bin directory to the list.</LI>
<LI>Show Directories for: Include files. Add the Xerces include directory to the list. If you are building with ICU, add the
ICU include directory to the list as well.</LI>
<LI>Show Directories for: Library files. Add the Xerces lib directory to the list. If you are building with ICU, add the ICU
lib directory to the list as well.</LI>
</OL></LI>
</OL>
</FONT></TD></TR></TABLE><BR>
<A name="dotNet"><!--anchor--></A>
<TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Steps for doing a Windows Build with Microsoft Visual Studio .NET</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<P>For users who want to build with Visual Studio .NET,</P>
<OL>
<LI>Create the XERCESCROOT environment variable and set it to the path of the root directory of Xerces-C++.</LI>
<LI>If you are building with ICU, create the ICUROOT environment variable and set it to the path of the ICU root directory.</LI>
<LI>Use Visual Studio .NET to open the Xalan solution (.sln) from the xml-xalan\c\Projects\Win32\VC7.1. If you are building
with ICU, then use XalanICU.sln. Otherwise, open the Xalan.sln solution file.<BR><BR>
<TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>You may need to restart Visual Studio .NET in order for ICUROOT and XERCESCROOT to take effect.</I></FONT></TD></TR></TABLE>
<BR>
An alternative method to the steps described above, would be to go to &quot;Tools&quot; and select &quot;Options&quot; from Visual Studio .NET. From
the &quot;Options&quot; window, click on the &quot;Projects&quot; folder to expand the list. Select &quot;VC++ Directories&quot; from the list and do the following:
<OL>
<LI>Show Directories for: Executable files. Add the Xerces bin directory to the list.</LI>
<LI>Show Directories for: Include files. Add the Xerces include directory to the list. If you are building with ICU, add the
ICU include directory to the list as well.</LI>
<LI>Show Directories for: Library files. Add the Xerces lib directory to the list. If you are building with ICU, add the ICU
lib directory to the list as well.</LI>
</OL></LI>
</OL>
</FONT></TD></TR></TABLE><BR>
<A name="unix"><!--anchor--></A>
<TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Steps for doing a UNIX build</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<P>For users who want to build in the UNIX environment,</P>
<OL>
<LI>The Xalan build files are written for GNU make, and will not work with other make utilities.<BR><BR></LI>
<LI>Set the XERCESCROOT environment variable to the path to the root directory of Xerces-C++.<BR><BR></LI>
<LI>Set the XALANCROOT environment variable to the path to the c directory in the root directory of the Xalan-C++
distribution. For example, if the distribution is located in &quot;/home/mydir&quot;, you would set the XALANCROOT to
&quot;/home/mydir/xml-xalan/c&quot;. <BR><BR></LI>
<LI>(Optional) If you decide to build with ICU, integrate the build with ICU by installing the ICU (see <A href="usagepatterns.html#icu">Using the ICU</A>) and defining XALAN_USE_ICU to a value, for example:
export XALAN_USE_ICU=true. Set the ICUROOT environment variable to the path to the root directory of ICU.
Note that building Xalan with ICU requires that Xerces must also be built with ICU.<BR><BR></LI>
<LI>Change directory to XALANCROOT. You can also build Xalan-C outside of the source tree, but you will need to adjust the path to the
runConfigure script in the next step.<BR><BR></LI>
<LI>Run the runConfigure utility and provide the platform, C compiler, and C++ compiler flags as
indicated below. The runConfigure utility is used to generate the appropriate Makefile for
the desired build platform based on the options specified by the user. Valid options for the
runConfigure utility are:<BR><BR>
<CODE><FONT face="courier, monospaced">./runConfigure -p &lt;value&gt; -c &lt;value&gt; -x &lt;value&gt; [-[flag] &lt;value&gt;]</FONT></CODE><BR><BR>
<TABLE border="0" cellpadding="2" cellspacing="2" width="100%">
<TR><TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>flag</B>&nbsp;
</FONT></TD><TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Description</B>&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">p&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Build platform. Option must be provided by user. Valid values <BR>include:
aix, linux, freebsd, netbsd, solaris, hp-10, hp-11, hp-11-ia64, irix,<BR>
tru64, macosx, cygwin. &nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">c&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">C compiler name. Example: gcc, cc, c89, xlc_r, etc.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">x&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">C++ compiler name. Example: g++, xlC_r, CC, etc.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">d&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Indicates build is a debug build. Takes no values. Default is no <BR>debug.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">t&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Transcoder to use. Valid value is 'icu'. Default is null.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">m&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Type of localization support method. Valid values include: inmem, <BR>icu, and nls.
Default is inmem.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">M&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Locale for Message Localization Support. Default is &quot;en_US&quot;&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">r&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Threads option. Valid values include: pthread or dce. Default is <BR>pthread.
(valid on HP-UX only)&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">b&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Specify whether it is a 32-bit or 64-bit build. Valid values are 32 <BR>and 64.
Default is 32-bit&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">P&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Install root directory. Used if invoking build with gmake install or <BR>gmake
install-package. Default install root directory is /usr/local&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">l&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Extra link options other than the default. Default is null&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">z&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Extra compiler options other than the default. Default is null&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">C&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Extra configuration options.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">h&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">To get help on the above commands. Default is no help.&nbsp;
</FONT></TD></TR>
</TABLE><BR>
<I>Linux using GCC:</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p linux -c gcc -x g++</FONT></CODE><BR>
<I>Linux using the Intel compiler:</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p linux -c icc -x icc</FONT></CODE><BR>
<I>AIX (32-bit):</I>&nbsp;&nbsp;&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p aix -c xlc_r -x xlC_r</FONT></CODE><BR><BR>
<I>AIX (64-bit):</I>&nbsp;&nbsp;&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p aix -c xlc_r -x xlC_r -b 64</FONT></CODE><BR><BR>
<I>Cygwin (32-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p cygwin -c gcc -x g++</FONT></CODE><BR><BR>
<I>HP-UX 11 (32-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p hp-11 -c cc -x aCC</FONT></CODE><BR><BR>
<I>HP-UX 11 (64-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p hp-11 -c cc -x aCC -b 64</FONT></CODE><BR><BR>
<I>HP-UX 11 for Itanium (32-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p hp-11-ia64 -c cc -x aCC</FONT></CODE><BR><BR>
<I>HP-UX 11 for Itanium (64-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p hp-11-ia64 -c cc -x aCC -b 64</FONT></CODE><BR><BR>
<I>Solaris (32-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p solaris -c cc -x CC</FONT></CODE><BR><BR>
<I>Solaris (64-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p solaris -c cc -x CC -b 64</FONT></CODE><BR><BR>
if you choose to install the distribution after building the libraries and executables,
then you will need to indicate where you would like the distribution to be installed.
To specify the install directory for your distribution, specify the flag -P &lt;install directory&gt;.
for example, building and installing on the AIX platform:<BR><BR>
<CODE><FONT face="courier, monospaced">./runConfigure -p aix -c xlc_r -x xlC_r -P $HOME/my_xalan</FONT></CODE><BR><BR>
<TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="20"><IMG alt="Note" border="0" height="24" hspace="0" src="resources/note.gif" vspace="0" width="20"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>The standard binary directories bin, lib, and include are created in the specified directory only if the install or
install-package option is specified in the build process.<BR><BR></I></FONT></TD></TR></TABLE>
To see the other runConfigure flags you may include, use the help flag:<BR><BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -h</FONT></CODE><BR><BR></LI>
<LI>Purge the previous build:<BR><BR>
<CODE><FONT face="courier, monospaced">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;make clean</FONT></CODE><BR><BR></LI>
<LI>Run the new build:<BR><BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">make</FONT></CODE><BR>
or<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">make <I>targ</I></FONT></CODE><BR><BR>
where <I>targ</I> can be one of:
<TABLE border="0" cellpadding="2" cellspacing="2" width="100%">
<TR><TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>targ</B>&nbsp;
</FONT></TD><TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Description</B>&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">all&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Build the libraries and Xalan executable. This is the default target <BR>if no targ
is specified.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">clean&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Deletes existing binaries, executables, libraries, tests, and <BR>samples.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">install&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Build the library, executables, and samples, and copy them (along with <BR>the header files)
the specified install location.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">install-package&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Installs the library, executables, and samples to the <BR>specified location.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Samples&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Builds the samples.&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Tests&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Builds the tests.&nbsp;
</FONT></TD></TR>
</TABLE>
</LI>
</OL>
</FONT></TD></TR></TABLE><BR>
<A name="locale"><!--anchor--></A>
<TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="666699" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG alt="" border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Steps for doing a Build with Message Localization Support</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG alt="" border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<P>Message Localization Support is a new feature to allow users to build Xalan-C++ such that diagnostic messages are issued
in the language of their choice. Message localization support comes in three flavours:</P>
<UL>
<LI>Building static messages in the form of a library (DLL or shared object) which can be bound
to the Xalan executable. This method is referred to as &quot;in memory&quot;. By default, Xalan-C++ is built using &quot;in memory&quot;
method.</LI>
<LI>Building messages in the form of a library using localization support provided by the International Components for
Unicode (ICU). </LI>
<LI>Building messages in the form of a message catalog. This method utilizes the localization support provided by the Unix
National Language Support (NLS) system. This method is supported for UNIX platforms only. </LI>
</UL>
<P>Regardless of which method you choose, a message file containing translated messages in the language of your choice must
be provided. The standard message file provided in the Xalan-C++ version 1.10 source package is in XML Localization Interchange
File Format (XLIFF) format and conforms to the XLIFF 1.1 standard (please see
<A href="http://www.oasis-open.org/committees/xliff/documents/xliff-specification.htm">
http://www.oasis-open.org/committees/xliff/documents/xliff-specification.htm</A> for more information.) All message files
must be written and conform with the XLIFF 1.1 standard.</P>
<P>Once an XLIFF message file has been created, the XLIFF file should be stored under xml-xalan/c/src/xalanc/NLS/&lt;locale_name&gt;
directory (for example, the default XLIFF message file provided is XalanMsg_en_US.xlf). To build, you will need to follow the
same steps as shown above for building in Unix or Windows but with a small change.</P>
<P>For building on Windows platform with &quot;In Memory&quot; method:</P>
<OL>
<LI>Create the environment variable XERCESCROOT and set it to the path to the root directory of Xerces-C++.</LI>
<LI>Create the environment variable ICUROOT and set it to the path to the ICU root directory.</LI>
<LI>Open the Xalan.dsw workspace using Microsoft Visual C++. The &quot;inmem&quot; localization method should be configured by default.</LI>
<LI>Select the Localization project, and go to Settings and click on the &quot;General&quot; tab. Verify
the build command line to use &quot;nmake /f BuildMessages.mak TYPE=inmem LOCAL=en_US&quot;</LI>
<LI>Run &quot;Build all&quot; with the configuration of your choice. </LI>
</OL>
<P>For building on the Windows platform with ICU method:</P>
<OL>
<LI>Create the environment variable XERCESCROOT and set it to the path to the root directory of Xerces-C++.</LI>
<LI>Create the environment variable ICUROOT and set it to the path to the ICU root directory.</LI>
<LI>Open the XalanICU.dsw workspace using Microsoft Visual C++. </LI>
<LI>Select the AllInOneWithICU project, and ensure that the project depends on the LocalizationWithICU
project. </LI>
<LI>Select the LocalizationWithICU project, and go to Settings and click on the &quot;General&quot; tab. Modify
the build command line to use &quot;nmake /f BuildMessages.mak TYPE=icu LOCAL=en_US&quot;</LI>
<LI>Open the tools.ini file under Projects\Win32\VC6\Utils\Localization and add the ICU root
directory to the ICUROOT variable setting.</LI>
<LI>Run &quot;Build all&quot; with the configuration of your choice. </LI>
</OL>
<P>For building on the Unix platform:</P>
<OL>
<LI>Repeat steps 1 through 5 as outlined under &quot;Steps for doing a UNIX Build&quot; </LI>
<LI>Run the runConfigure and provide the platform, C compiler, C++ compiler, the message locale
system flavour you are intending to build, and the locale support.<BR><BR>
Example 1: to use the NLS method for localization support using the default locale en_US:<BR><BR>
<I>AIX (32-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p aix -c xlc_r -x xlC -m nls</FONT></CODE><BR><BR>
<I>AIX (64-bit):</I>&nbsp;&nbsp;.<CODE><FONT face="courier, monospaced">/runConfigure -p aix -c xlc_r -x xlC_r -b 64 -m nls</FONT></CODE><BR><BR>
Example 2: to use the 'icu' method for localization support using the locale fr_FR:<BR><BR>
<I>AIX (32-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p aix -c xlc_r -x xlC_r -m icu -M fr_Fr</FONT></CODE><BR><BR>
<I>AIX (64-bit):</I>&nbsp;&nbsp;<CODE><FONT face="courier, monospaced">./runConfigure -p aix -c xlc_r -x xlC_r -b 64 -m icu -M fr_Fr</FONT></CODE><BR><BR>
</LI>
<LI>Perform steps 7 and 8 as outlined under &quot;Steps for doing a UNIX Build&quot; </LI>
</OL>
<P>After Xalan-C++ and associated libraries have been successfully built, the message catalog will be stored in the directory
xml-xalan/c/bin.<BR><BR>
<TABLE border="0" cellpadding="2" cellspacing="2" width="100%">
<TR><TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Localization Build Type</B>&nbsp;
</FONT></TD><TD align="center" bgcolor="#039acc" colspan="1" rowspan="1" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>File Name</B>&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>ICU or &quot;in memory&quot; method:</I>&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">libxalanMsg110.so (for UNIX)<BR>
XalanMessages_1_10.dll and XalanMessages_1_10.lib (for Windows)&nbsp;
</FONT></TD></TR>
<TR><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>NLS method:</I>&nbsp;
</FONT></TD><TD align="left" bgcolor="#a0ddf0" colspan="1" rowspan="1" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">xalanMsg1_10.cat can be found in $XALANCROOT/nls/&lt;locale_name&gt;/ directory&nbsp;
</FONT></TD></TR>
</TABLE>
</P>
<P>The location of the message library, Xalan-C++ and Xerces-C++ binaries need to be added to the PATH and library path variables.
Depending on the Message Localization Support method you've chosen, the following steps will need to be performed such that
Xalan-C++ will be able to utilize the message library. </P>
<UL>
<LI>For an &quot;in memory&quot; or &quot;icu&quot; build, the location of the Xalan-C++ and Xerces-C++ executables need to be added to the PATH variable.
The location of the message library will need to be added to:
<UL>
<LI>the LIBPATH variable for AIX users </LI>
<LI>the LD_LIBRARY_PATH variable for RedHat, SuSE, and Solaris users </LI>
<LI>the SHLIB_PATH variable for HP-UX users. </LI>
</UL>
</LI>
<LI>For an NLS build, the message catalog will need to be added to the NLSPATH. </LI>
</UL>
</FONT></TD></TR></TABLE><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG alt="dot" height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
Copyright &copy; 1999-2004 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>