Skip to content
Apache Xalan C
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
version.incl Updated version number to 1.11. Oct 27, 2008


Apache Xalan-C/C++ XSLT Library Version 1.11

Project Description:
    The Apache Xalan C/C++ Project provides a library and a 
    comand line program to transform XML documents using a
    stylesheet that conforms to XSLT 1.0 standards.

    The source package contains all the code to create the library,
    a command line transform utility and the documentation.

    The documentation packages provide pre-built html documents
    for web browser use.

    Binary prebuilt packages are available for some platforms.
    We could use help providing packages for more platforms.

    Xalan is a project of the Apache Software Foundation.

Project Website:

Subversion Repository:

Mirror Download Site:

    Apache Xerces-C/C++ XML Parser Library
        Version 3.0 or newer
        Version 3.1.1 preferred

    Gnu Make
        This is required when building the Xalan-C library
        on UNIX/Linux platforms.


    README        - This Document
    LICENSE       - The Software License
    NOTICE        - The Software Attributions
    html/         - The HTML documentation package when available

    Xalan         - command line XSLT stylesheet transform utility

    - directory containing library header files

(prefix)/lib/             ->
    lib/     ->            ->        ->


    README        - This Document
    LICENSE       - The Software License
    NOTICE        - The Software Attributions
    html/         - The HTML documentation package when available

    Xalan.exe     - command line XSLT stylesheet transform utility
    Xalan-C_1_11.dll         - Release build library
    Xalan-C_1_11D.dll        - Debug build library
    XalanMessages_1_11.dll   - Release build messages
    XalanMessages_1_11D.dll  - Debug build messages

    - directory containing library header files

    Xalan-C_1.exp            - Windows DLL export definitions
    Xalan-C_1.lib            - Windows DLL library definitions
    Xalan-C_1D.exp           - Windows DLL export definitions
    Xalan-C_1D.lib           - Windows DLL library definitions
    XalanMessages_1_11.exp   - Windows DLL export definitions
    XalanMessages_1_11.lib   - Windows DLL library definitions
    XalanMessages_1_11D.exp  - Windows DLL export definitions
    XalanMessages_1_11D.lib  - Windows DLL library defnitions

    - This is only a partial list
    Linux/Gnu      GCC 4.4
    Windows        VC7.1         Visual Studio .NET 2003
    Windows        VC8           Visual Studio .NET 2005
    Windows        VC9           Visual Studio .NET 2008
    Windows        VC10          Visual Studio .NET 2010
    Solaris-10     CC            SunStudio 12
    OpenBSD 5.1    GCC 4.1
    FreeBSD 9      GCC 4.2
    - Known from previous releases
    AIX            GCC
    AIX            ALC
    BSD            GCC
    HPUX           ACC
    Mac OS X       GCC
    Cygwin         GCC
    MinGW          GCC


README for XalanC project at

Steps for doing a UNIX build from source distributions
For users who want to build in the UNIX environment,

   1. The Xalan build files are written for GNU make, and will not work with 
      other make utilities.

   2. Set the XERCESCROOT environment variable to the path to the root directory 
      of Xerces-C++.

   3. 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 "/home/mydir", you would set the XALANCROOT to 

   4. (Optional) If you decide to build with ICU, integrate the build with ICU 
      by installing the ICU (see Using the ICU) 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.

   5. 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.

   6. 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:

      ./runConfigure -p <value> -c <value> -x <value> [-[flag] <value>]

      flag      Description 
      p         Build platform. Option must be provided by user. Valid values
      include: aix, linux, freebsd, netbsd, solaris, hp-10, hp-11, hp-11-ia64, irix,
      tru64, macosx, cygwin.  
      c         C compiler name. Example: gcc, cc, c89, xlc_r, etc. 
      x         C++ compiler name. Example: g++, xlC_r, CC, etc. 
      d         Indicates build is a debug build. Takes no values. Default is no
      t         Transcoder to use. Valid value is 'icu'. Default is null. 
      m         Type of localization support method. Valid values include: inmem,
      icu, and nls. Default is inmem. 
      M         Locale for Message Localization Support. Default is "en_US" 
      r         Threads option. Valid values include: pthread or dce. Default is
      pthread. (valid on HP-UX only) 
      b         Specify whether it is a 32-bit or 64-bit build. Valid values are 32
      and 64. Default is 32-bit 
      P         Install root directory. Used if invoking build with gmake install or
      gmake install-package. Default install root directory is /usr/local 
      l         Extra link options other than the default. Default is null 
      z         Extra compiler options other than the default. Default is null 
      C         Extra configuration options. 
      h         To get help on the above commands. Default is no help. 

      Linux using GCC:  ./runConfigure -p linux -c gcc -x g++
      Linux using the Intel compiler:  ./runConfigure -p linux -c icc -x icc
      AIX (32-bit):    ./runConfigure -p aix -c xlc_r -x xlC_r

      AIX (64-bit):    ./runConfigure -p aix -c xlc_r -x xlC_r -b 64

      Cygwin (32-bit):  ./runConfigure -p cygwin -c gcc -x g++

      HP-UX 11 (32-bit):  ./runConfigure -p hp-11 -c cc -x aCC

      HP-UX 11 (64-bit):  ./runConfigure -p hp-11 -c cc -x aCC -b 64

      HP-UX 11 for Itanium (32-bit):  ./runConfigure -p hp-11-ia64 -c cc -x aCC

      HP-UX 11 for Itanium (64-bit):  ./runConfigure -p hp-11-ia64 -c cc -x aCC -b 64

      Solaris (32-bit):  ./runConfigure -p solaris -c cc -x CC

      Solaris (64-bit):  ./runConfigure -p solaris -c cc -x CC -b 64

      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 <install directory>. for example, building and installing on the 
      AIX platform:

      ./runConfigure -p aix -c xlc_r -x xlC_r -P $HOME/my_xalan

      Note      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.

      To see the other runConfigure flags you may include, use the help flag:

           ./runConfigure -h

   7. Purge the previous build:

           make clean

   8. Run the new build:

           make targ

      where targ can be one of:
      targ      Description 
      all       Build the libraries and Xalan executable. This is the default target
                if no targ is specified. 
      clean     Deletes existing binaries, executables, libraries, tests, and
      install   Build the library, executables, and samples, and copy them (along with
                the header files) the specified install location. 
      install-package   Installs the library, executables, and samples to the
                specified location. 
      Samples   Builds the samples. 
      Tests     Builds the tests. 

You can’t perform that action at this time.