xalan-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Elzen <Martin.El...@usoft.com>
Subject notes on getting Xalan 1.11 building on A Solaris 10 system with sun studio 12.3 and the -library=stdcxx4 option
Date Fri, 16 Nov 2012 16:10:08 GMT
Hi everyone,

This is just heads-up about issues I discovered when trying to get Xalan 1.11 building on
a Solaris 10 system with SunStudio 12.3 using the -library=stdcxx4 option and which changes
I needed to make to get things compiling...  Maybe I should post this in the Xalan wiki but
I need to do some other things now...

Download xalan 1.11 (src.tar.gz) from the official site (xalan.apache.org/xalan-c/<http://xalan.apache.org/xalan-c/>),
verify it, and copy it to the directory where you want to build it on the Solaris.

Ensure that GNU tar is used.

Ensure that GNU make is used.

[The following export probably isn't necessary to build Xalan, but since it was set when Xerces
was built, it seems handy to also define it when Xalan is built  (to see if defining it causes
issues during the Xalan build process) ...]
export CXXFLAGS="-library=stdcxx4 -m32"

tar xvf xalan_c-1.11-src.tar.gz >out.extractFromArchive.txt 2>&1 &

cd *11/c

export XERCESCROOT=<root-of-directory-hierarchy Xalan was installed to>

export XALANCROOT=`pwd`

./runConfigure -p solaris -c cc -x CC -l -library=stdcxx4 -b 32 -P /home/prod/usd72/app/xalan/1.11.stdcxx4
>out.runconfig 2>&1 &

Change src/xalanc/Include/SolarisDefinitions.hpp as follows:
remove the #if/#else/#endif around the XALAN_HAS_STD_ITERATORS/XALAN_HAS_STD_DISTANCE lines.

Change src/xalanc/PlatformSupport/DoubleSupport.hpp as follows:
add an #if defined(SOLARIS) / #include <math.h> / #endif section
in the isNAN(double) function put an #if defined(SOLARIS) / return isnan(theNumber) != 0;
/ #else / and #endif around the return std::isnan(theNumber) != 0; line

make >out.make 2>&1 &

Verify that the output-containing files don't contain unexpected error messages and such and
that the expected library files are present in the supplied Xalan installation/lib dir.

To make sure that xalan and xerces seem to be working correctly, do the following :
cd samples
./runConfigure -p solaris -c cc -x CC -b 32 -l -library=stdcxx4 -z -library=stdcxx4

Verify that the SimpleTransform binary was built correctly by verifying that its' name shows
up when you ls -l ../bin

cd SimpleTransform/

cp ../../bin/SimpleTransform .

Add the new Xerces and Xalan lib directories to the system-wide library-path,

eg by export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/app/xerces/3.1.1.stdcxx4/lib:$HOME/app/xalan/1.11.stdcxx4/lib

Verify that the file foo.out is not present in the current directory (if it is, delete or
rename it).

Then run the SimpleTransform executable, eg as follows: ./SimpleTransform

Verify that the foo.out file has been created and that it contains the expected results of
applying the contents of foo.xsl to the contents of foo.xml .

Martin Elzen





+31-(0)35-699 09 18<tel:+31356990918>




USoft B.V.  |  Amalialaan 126E<http://maps.google.nl/maps?f=q&source=s_q&hl=nl&geocode=&q=amalialaan+126e,+baarn&sll=52.469397,5.509644&sspn=5.844041,16.907959&ie=UTF8&hq=&hnear=Amalialaan+126,+3743+Baarn,+Utrecht&t=h&z=16&iwloc=A>
 |  3743 KJ Baarn  |  The Netherlands

The information contained in this communication is intended solely for the use of the individual
or entity to whom it is addressed and others authorized to receive it. It may contain confidential
or legally privileged information. If you are not the intended recipient you are hereby notified
that any disclosure, copying, distribution or taking any action in reliance on the contents
of this information is strictly prohibited and may be unlawful. If you have received this
communication in error, please notify us immediately by forwarding this email to MailAdmin@usoft.com
and then delete it from your system.

USoft is neither liable for the proper and complete transmission of the information contained
in this communication nor for any delay in its receipt.

View raw message