Building OpenOffice.org 1.1.x under Linuxunder Solarisunder Windows with tcshunder Windows with 4NT

Beware! The build instructions for OpenOffice.org 2.x are different!

The Cygwin tcsh environment is new (from December 2003), and can be used starting with cws_srx644_ooo20030412.

This document describes the requirements and actions that you need to build OpenOffice.org on Linux.Solaris.Windows using Cygwin shell.Windows.

Commands you have to type on the keyboard follow this syntax throughout this document:

config_office> ./configure

In this example, the script configure is executed in the directory config_office.

D:\my\source> winenv.bat

In this example, the script winenv.bat is executed in the directory D:\my\source under a 4NT shell. Unless stated otherwise, all commands appearing in this document should be entered from a 4NT shell (the exception is the configure script which has to be run from a cygwin bash shell). $SRC_ROOT will denote the directory in which the source code of OpenOffice.org is stored.

Basically, there is the choice to build OpenOffice.org from two different branches: a stable branch, which results in the release version, or a less stable developer branch (latest release see here). Links to the different sources are given in the document.




Table of Contents




Overview

This section is meant as a reminder or checklist for those who have some experience in building OpenOffice.org. Everybody else should jump to the Build Requirements section.

Even experienced builders are well advised to check the release notes at http://download.openoffice.org/index.html and the section Build Requirements in this document to inform yourself about changes since the previous releases.

Detailed step-by-step build descriptions are given from the next section on.

You can perform a full build, or you can build an individual project using a prebuilt version.

Overview of Performing a Full Build

To perform a full build, you need to follow these steps:

  1. Get the source code, either from the download webpage (http://download.openoffice.org/index.html) or alternatively via a check-out from the cvs tree against a release tag, e.g. OpenOffice_1_1_4.
  2. Run the configure script to check all requirements and to create the script LinuxIntelEnv.Set.SolarisSparcEnv.Set.winenv.set.
  3. Run the configure script in a cygwin bash shell to check all requirements and to create the script winenv.bat.
  4. Run the LinuxIntelEnv.SetSolarisSparcEnv.Setwinenv.setwinenv.bat (under 4NT) script to set all environment variables.

    Please see the last screen from the configure script for more specific information on setting up for your platform.

  5. Create the build tools using bootstrap.
  6. Build typing dmake in $SRC_ROOT, or build --all in the instsetoo module, or build followed by deliver in the individual modules.
For detailed build instructions, see the section Building a Full Build of the Office Suite in this document. The installation procedure is described at the end of this document.

Overview of Building an Individual Project

You can use a prebuilt version to build an individual project. Having a prebuilt version is necessary because the individual project you want to build could depend on other projects. A project builds a particular component of OpenOffice.org. For example, the Word Processing project builds the Word Processing application. To build an individual project, you must follow these steps:

  1. Download the appropriate solver tarballs from the download webpage (http://download.openoffice.org/index.html) e.g., for 643B the solver tarball solver643B_linux_intel.tar.gz. solver643B_solaris_sparc.tar.gz. solver643B_win32intel.tar.gz. solver643B_win32intel.tar.gz.

    643 is a very old release. Please use the latest version.

  2. Check out the modules for the project that you want to build from the OpenOffice.org cvs tree. If your project uses the resources module, res, check out this module also. You can, of course, also download the entire source from the download webpage (http://download.openoffice.org/index.html). However, it is not possible to download individual modules there.
  3. Check out the module config_office. This is always necessary to create the build environment.
  4. Also check out the modules dmake, external, sal, solenv, soltools, vos, tools, rsc and xml2cmp. These are required by bootstrap (see below).
  5. Unpack the solver tarball in the $SRC_ROOT directory.
  6. Run the configure script to check all requirements and to create the settings file LinuxIntelEnv.Set. SolarisSparcEnv.Set. winenv.set.
  7. Run the configure script in a cygwin bash shell to check all requirements and to create the script winenv.bat.

    Note that all paths should NOT contain spaces. This will confuse dmake later.

  8. Run in tcsh source LinuxIntelEnv.Set or in bash source LinuxIntelEnv.Set.sh in tcsh source SolarisSparcEnv.Set or in bash source SolarisSparcEnv.Set.sh in tcsh source winenv.set and rehash afterwards or in bash source winenv.set.sh winenv.bat to set all environment variables and build dmake.exe.
  9. Create the build tools using ./bootstrap.
  10. Build each module against the prebuilt solver using the build tool, followed by deliver.
For detailed build instructions, see Building Individual Projects with a Prebuilt.


Build Requirements

Before you start building, you must ensure that your system satisfies the recommended software and hardware requirements for the type of system you are working on. For Linux, Solaris, Windows, Windows, these are as follows:

Software Requirements
  • glibc 2.1.x or higher
  • gcc: OpenOffice.org has been successfully build under Linux using the gcc versions 3.0.x, 3.1.1, 3.2.x, and 3.3.x. Older versions were built with gcc 2.95.2, 2.95 support is not maintained for current branches however. Version 2.96 does not work!
  • The X11 development libraries and header files should be installed. Should be in place with most Linux distributions.

    Note the there are currently some issues with X version 4.3.

  • PAM (should come with most Linux distributions). You must install the development package for your distribution.
  • JDK 1.3.1 or JDK 1.4.1 (note you need the SDK, not just the JRE).
    JDK 1.4.2 is not supported for versions prior to OpenOffice.org 1.1.1, see issue 16626.
  • If you are building with JDK 1.3.1, you need to download crimson.jar from http://xml.apache.org/crimson/ and xalan.jar and xml-apis.jar from http://xml.apache.org/xalan-j/index.html and add these to the compilation classpath
  • Perl 5
  • csh   Note that you can start a build in bash however all the scripts in the build system are actually csh scripts.
  • zip and unzip
  • The gpc general polygon clipper library release 2.31, located at http://www.cs.man.ac.uk/aig/staff/alan/software/. Download and unpack the tarball. You should have the files gpc.c and gpc.h in $SRC_ROOT/external/gpc.
  • GTK - If you enable the crash reporter in configure then you need the gtk 2, jpeg and tiff development libraries.
  • Ant Is required to build some features. This is a Java Make utility.

Software Requirements

  • Solaris 2.8 or 2.9
  • Solaris compiler Forte C++ 6 update 1, Forte C++ 6 update 2 or Forte C++ 7
  • JDK 1.3.1 or JDK 1.4.1 (note you need the SDK)
    JDK 1.4.2 is not supported for versions prior to OpenOffice.org 1.1.1, see issue 16626.
  • If you are building with JDK 1.3.1, you need to download crimson.jar from http://xml.apache.org/crimson/ and xalan.jar and xml-apis.jar from http://xml.apache.org/xalan-j/index.html and add these to the compilation classpath.
  • Perl 5
  • tcsh   Note that you can start a build in bash however all the scripts in the build system are actually csh scripts.
  • zip and unzip
  • GNU patch and cp, GNU tar recommended
  • The gpc general polygon clipper library release 2.31, located at http://www.cs.man.ac.uk/aig/staff/alan/software/. Download and unpack the tarball. You should have the files gpc.c and gpc.h in $SRC_ROOT/external/gpc.
  • Ant Is required to build some features. This is a Java Make utility.

Build Requirements

  • General
    • Don't build on FAT or network drives, see iz26761 and iz18561 for details.
    • Don't build with an user account name that contains spaces, see iz24075 for details.
  • Windows NT Version 4 Service Pack 3 or higher, Windows 2000 SP 2 or higher or Windows XP.
  • A Microsoft Visual C++ Compiler. MS Visual C++ .net 2002 is recommended, but MS Visual C++ Version 6 Service Pack 5 or 6 can also be used. Please note that it is deprecated and no longer usable for the forthcoming 2.0 (680er codeline) version of Openoffice.org and see also iz21646 for a known problem with this compiler.
    Below you find a list with additional requirements that have to be fulfilled for the different compilers.

    Extra requirements for MS Visual C++ .net 2002:

    • Install the ConvertDSW (wdevenv) utility. Get it from http://tools.openoffice.org/source/browse/tools/contrib/addin/bin/ and follow the instructions of the Readme.sxw in that directory.
    • A Microsoft Assembly compiler. It is included in .NET 2002, it can be found in the same directory as the compiler (cl.exe). Look for ML.EXE. If you use the --with-cl-home= configure option you also have to use the --with-asm-home= option pointing to the directory with the ML.EXE.
    • Copy msvcp70.dll and msvcr70.dll to $SRC_ROOT\external\msvcp70\. These dlls are part of the .NET installation and can be found in a directory similar to: c:\Program Files\Microsoft Visual Studio .NET\Visual C++ .NET Professional - English\.

    Extra requirements for MS Visual C++ 6 SP5 or SP6:

    • A Microsoft Assembly compiler. It can be found in the Windows 98 Driver Developer Kit. Additional instructions can be found at: http://www2.dgsys.com/~raymoon/faq/masm.html#9.
      Place ML.EXE and ML.ERR somewhere in a directory in the system path or use the configure option --with-asm-home= pointing to this location.
      Warning! Do not use the Processor Pack for Visual Studio 6.0, it is proven to break the build.
    • Use midl.exe and midlc.exe from the platform SDK. It has been reported in iz21023 that the versions that come with MS Visual C++ 6 do not work properly.

  • Parts of the February 2003 version of the Microsoft Platform SDK. The MDAC SDK, the Core SDK and the Internet Development SDK have to be installed on your build system. You can download them from http://www.microsoft.com/msdownload/platformsdk/sdkupdate.

    Important Note 1: Please ensure that you also select Build environment (Intel 64-bit) where available, when downloading the Platform SDK.

  • 4NT Version 4.0 or higher. You can download this from ftp://jpsoft.com/4nt/.

    Important Note 2: Please ensure that the path to the 4NT application directory doesn't contain one or more spaces. No, not even c:\Program Files\4NT\. In this case uninstall and re-install to a directory without spaces.

    Important Note 3: Before you use 4NT, you must ensure that the initialisation file 4nt.ini is present in the 4NT application directory (This means you propably have to create it.). The following code sample shows the content of the 4nt.ini file:

    [4NT]
    CommandSep = ^
    EscapeChar = Ctrl-X
    ParameterChar = &
    LocalAliases = Yes
    

    Important Note 4: If you use 4NT 5.x and want to build OpenOffice.org 1.1 (OOo_1.1.0_source.tar.bz2 or OOo_1.1.0_source.tar.gz) please ensure that you replace the file: python\convert.bat with this version. This is not necessary for newer source versions.

  • A Java 2 SDK. JDK 1.4 or newer is required.

    Important Note 5: JDK 1.4.1 is proven to work, but JDK 1.4.2 is not supported for versions prior to OpenOffice.org 1.1.1, see issue 16626.

  • Cygwin Toolkit from http://www.cygwin.com. Use at least Cygwin DLL version 1.5.10. The official informations on using the setup.exe and installing Cygwin are available at: http://cygwin.com/cygwin-ug-net/setup-net.html. More help and information on the Cygwin tools can be found at http://website.openoffice.org/support/en/howtos/1.html.

    When installing Cygwin make sure you set the "Default Text File Type" to "Unix". This is the default setting.

    Not all Cygwin packages are needed to build OpenOffice.org, but make sure that at least all the packages from the base category and the following packages are installed.

    bison
    flex
    make
    patch
    perl

    And also:
    gcc
    rxvt
    tcsh
    unzip
    zip
  • Important Note 6: Within the Cygwin Toolkit, three executables might be realised as symlinks, namely awk.exe, gunzip.exe and tar.exe. This might lead to a break of the build later, and the symlinks should be replaced with copies of the command they link to. Check, in a cygwin shell, with ls -l /bin/awk.exe whether awk.exe is a symlink. For instance, awk.exe could be a link to gawk.exe, in which case you should copy gawk.exe to awk.exe: cd /bin; cp gawk.exe awk.exe. Take similar action for unzip.exe and tar.exe.

    Important Note 7: If your cygwin installation includes the XFree86 packages make sure to remove/change the /etc/profile.d/00XFree86-bin.csh file. See iz26833.

    Important Note 8: Don't use Cygwin 1.5.7, there were some problems with this version. Upgrade to a newer release.

  • zip.exe Version 2.2 or higher, and unzip.exe. If you do not have these already, you can download them from www.info-zip.org. Note: The cygwin zip.exe is not working for the build under the 4NT shell. You have to use the native w32 version. Make sure that the first zip.exe in your path is the native w32 version, e.g. rename or delete the zip.exe in your cygwin /bin directory and copy the InfoZip version to this place.
  • The gpc general polygon clipper library release 2.31, located at http://www.cs.man.ac.uk/aig/staff/alan/software/. Download and unpack the tarball. You should have the files gpc.c and gpc.h in $SRC_ROOT/external/gpc.
  • The Microsoft Layer for Unicode (unicows.dll). Get it from the Microsoft site and put it into $SRC_ROOT/external/unicows. (Note: Microsoft seems to enjoy changing the exact location of this file. You may have to search Microsoft's website.) Last time it was seen here.
  • The dbghelp.dll from Microsoft. Get it from the Microsoft site and put it into $SRC_ROOT/external/dbghelp. (Note: You may have to search Microsoft's website.) Last time it was seen here.
  • Ant Is required to build some features. This is a Java make utility.

Perl - Optional requirements

For committers who want to use the CWS tooling. Install them like this.

Module: Used for:
Crypt::SSLeay for SSL encrypted SOAP connections
SOAP::Lite access the SOAP based CWS webservice

Hardware Requirements
  • Intel Pentium II (P4 recommended)
  • 256 MB RAM (Much more recommended)
  • 4 Gb free disk space, add approximately 2 Gb to build with --with-lang=ALL option. Approximately 8 Gb with full crash report enabled, --enable-crashdump.
Hardware Requirements
  • For Solaris/x86: Intel Pentium II PC (P4 recommended)
    For Solaris/Sparc: Ultrasparc 3 / 3i
  • 512 MB RAM
  • 4 GB free disk space
Hardware Requirements
  • Intel Pentium II PC
  • 128 MB RAM (More recommended)
  • 4 GB free disk space (8 GB for crashdump)


External Components

The code contains some further external components which are already provided. If you are interested in details about these, look at the External Components webpage at http://tools.openoffice.org/ext_comp.html.




Get the source code

You have two options to get the source code:




Generating the Build Environment and Build Tools

You use the configure script to generate the build environment. The configure script checks that all software, hardware, and system requirements for the build are satisfied, and it creates a configuration file called LinuxIntelEnv.Set SolarisSparcEnv.Set winenv.set that you then run the source command on to set all necessary build environment variables. Don't forget to run rehash afterwards.

Ideally, in keeping with the principles of open source, you would use an open source shell to build on a computer running a Win32 operating system. However, you decided to use a non-open source shell to build on a computer running a Win32 operating system: the 4NT command shell.

On the other hand, the bash shell from the cygwin tools is needed to run the configure script which generates the build environment. The configure script checks that all software, hardware, and system requirements for the build are satisfied, and it creates a configuration file called winenv.bat that you then execute to set all necessary build environment variables. We demonstrate a sample run below.

This configuration file will be moved into the SRC_ROOT directory. A top-level makefile script makefile.mk and the script bootstrap in the config-office directory will be moved into SRC_ROOT as well. This is due to technical reasons: The SRC_ROOT directory in the cvs tree can only hold directories. On the other hand, the top-level makefile.mk should logically be placed in the top-level directory SRC_ROOT. The cvs tree holds these files in config_office and configure copies them up.

If you are running a compiler with a non-standard name or location. Perhaps you would like to use ccache to reduce your compile time. Before running configure, make sure that the environment variables CC and CXX point to your c and c++ compiler:

CC=/your/path/to/gcc
CXX=/your/path/to/g++
export CC CXX
CC=/your/path/to/cc
CXX=/your/path/to/CC
export CC CXX

To run the configure script, type the following command:

$SRC_ROOT> cd config_office
config_office> ./configure

Before running configure, make sure that all needed Programs are in the system path or start configure with the appropriate command line switches.

The following should demonstrate in detail what steps have to be done to set up the environment. For this examples we assume that

  • the source code is in C:\oo643B
  • JDK 1.4.1_02 is installed in C:\j2sdk1.4.1_02
  • the Microsoft Compiler is located in C:\PROGRA~1\MICROS~3\VC98 (or C:\program files\microsoft visual studio\vc98)
  • the Microsoft SDK is located in C:\PROGRA~1\MICROS~5
  • and the assembly compiler resides in C:\ml

tcsh - Example

You have to enable the use of tcsh with --with-use-shell=tcsh.

To run the configure script, type the following command:

$SRC_ROOT> cd config_office
config_office> ./configure --with-cl-home="/cygdrive/c/Programme/Microsoft Visual Studio .NET 2003/Vc7"
--with-asm-home=/cygdrive/c/ml --with-jdk-home=/cygdrive/c/j2sdk1.4.1_02
--with-use-shell=tcsh

There are a number of options that you can use with the configure script. To display these options, type the following command:

config_office> ./configure --help

The following should demonstrate in detail what steps have to be done to set up the environment:

As 4nt is not the only possible shell, you should enable the use of 4NT with --with-use-shell=4nt
  • Run the configure script according to the following example. We assume here that

    • the source code is in C:\oo643B
    • JDK 1.4.1_02 is installed in C:\j2sdk1.4.1_02
    • the Microsoft Compiler is located in C:\PROGRA~1\MICROS~3\VC98 (or C:\program files\microsoft visual studio\vc98)
    • the Microsoft SDK is located in C:\PROGRA~1\MICROS~5
    • the assembly compiler resides in C:\ml
    • and your zip.exe and unzip.exe are in C:\unzip

    Running the configure script could then look like the following (bold typed text is what you enter):

    (open a cygwin bash shell)
    cd /cygdrive/c/oo643B/config_office
    ./configure --with-cl-home=/cygdrive/c/PROGRA~1/MICROS~3/VC98 --with-asm-home=/cygdrive/c/ml --with-jdk-home=/cygdrive/c/j2sdk1.4.1_02 --with-unzip-home=/cygdrive/c/unzip
    .
    .
    .
    (some screen output here)
    .
    .
    .
    (more screen output here)
    bash-2.02$ exit

You should exit the bash shell. Now you can run the environment settings file winenv.bat from your 4NT shell.

Note the change in pathname notation. Since the cygwin bash shell won't accept backslashes, paths have to be typed in a cygwin bash notation which is /cygdrive/c/path/to/file, instead of C:\path\to\file. This may appear confusing at the moment, but sticking to this notation will work.

There are a number of further options that you can use with the configure script. To display these options, type the following command:

config_office> bash configure --help

After running configure, you have to source the configuration file which sets all environment variables:

$SRC_ROOT> tcsh

$SRC_ROOT> source LinuxIntelEnv.Set
$SRC_ROOT> source SolarisSparcEnv.Set
$SRC_ROOT> source winenv.set

Don't forget to run

$SRC_ROOT> rehash

afterwards. See the last screen from configure for exact details for your platform.

After running configure you have to execute the configuration file which sets all environment variables. The generated file is called winenv.bat.

If you experiment with newest sources from the cvs-tree, mind that updates to the configure process may not happen via updates of configure (the script file) but via the files configure.in and set_soenv.in. The configure script itself is created from configure.in using the autoreconf command. The perl script set_soenv is created when you run configure from set_soenv.in.

If you need to modify or create a correct configure you would run commands like the following:

$SRC_ROOT> cd config_office
config_office> cvs update configure.in
config_office> autoreconf
$SRC_ROOT> cd config_office
config_office> cvs update configure.in
get a bash shell
config_office>bash autoconf
exit the bash shell

To update the configure script. If you only use code from the snapshot releases on the web, you don't need to be concerned about this.

To create the build tools, type the following command:

$SRC_ROOT> ./bootstrap

The bootstrap utility creates the tools required for building. This involves already building some modules and will take a few minutes.


Build Instructions

Building a Full Build of the Office Suite

Now you are ready to build OpenOffice.org. To build the entire suite, all you have to do (after having created the environment as described above) is to run dmake from the top-level directory. This may take several hours.
$SRC_ROOT> dmake

To clean up a previous build you can delete all output directories with

   rm -rf */unxlngi4.pro

If you decide to rebuild a module or build each module individually (mind dependencies!), you will have to use the build tool. A subsequent deliver will copy all created binaries, libraries etc. into the solver tree:

$SRC_ROOT/(module)> build
$SRC_ROOT/(module)> deliver

The following table shows the time required to build on a system with a particular specification. You can use these details to estimate the time required to build on your system.

Architecture Intel
Processor Pentium III
Processor speed 600 MHz
RAM 256 MB
Hard disk 4 GB IDE
Time (for 1.x series) ~12 h

Note that using ccache can reduce your compile times and dramatically reduce recompile times.

Architecture SPARC
Model Ultra 30
Processor speed 300 MHz
RAM 512 MB
Hard disk 10000 RPM model
Time (for SRC680_m74) ~39 h
Architecture Intel
Processor Pentium III
Processor speed 600 MHz
RAM 256 MB
Hard Disk 6 GB SCSI
Time ~10 h

Building Individual Projects with a Prebuilt

OpenOffice.org is organised in several projects. For example, the Word Processing Project. These in turn consist of several modules, organised in separate directories. The source contains approximately 90 modules.

You can build any project or module individually. Building modules individually should not be misunderstood as reducing OpenOffice.org to a special application, say, for instance, the spreadsheet application. The program will always consist of the entire office suite: text processor, spreadsheet, drawing application, etc. Building individual modules comes in handy if you want to develop on a certain module. Most modules will depend on other modules to be already built. In other words, all modules must build in a particular order. To avoid building all modules which are prerequisites of the module of your interest, you can make use of a prebuilt solver tree against which you can build any module.

For more information on modules and on the sequence that they build in, and on the dependencies, see tools.openoffice.org/modules.html.

You have to download the solver tree as a tarball. For example solver643B_linux_intel.tar.gz solver643B_solaris_sparc.tar.gz solver643B_win32int.tar.gz solver643B_win32int.tar.gz from the Download page at http://download.openoffice.org/index.html, use a current release 643 is very old and only used as an example, and unpack it in the $SRC_ROOT directory, e.g.:


$SRC_ROOT> tar -xzvf solver643B_linux_intel.tar.gz


$SRC_ROOT> gunzip solver643B_solaris_sparc.tar.gz
$SRC_ROOT> tar -xvf solver643B_solaris_sparc.tar


$SRC_ROOT> tar -xvzf solver643B_win32int.tar.gz

In order to create the build environment and build tools (bootstrap), you also have to check out the modules config_office, dmake, external, xml2cmp, mkdepend, sal, solenv, vos, tools and rscpp. In order to create the build environment and build tools, you also have to check out the config_office module and solenv.

To build a project, you build each of its modules individually in their directory with the build tool, followed by deliver to copy the created libraries, binaries etc. into the solver tree:

$SRC_ROOT/(module-name)> build
$SRC_ROOT/(module-name)> deliver
Files called build.lst in the directories (module-name)/prj contain all information about the subdirectories to be build (each of them containing makefiles makefile.mk), about internal dependencies, and also about modules the current module depends on. The files (module-name)/prj/d.lst control the actions done by deliver. The last or second to last directory to be build is usually module-name/util which is responsible for linking one or more shared libraries.


Building a Project with Debug Information

To rebuild a complete project with debug information, remove all object files by removing the unxlngi4.pro unxsols3.pro wntmsci9.pro directory. Then run build with the debug option set to true:

$SRC_ROOT/(module)> rm -rf unxlngi4.prounxsols3.prowntmsci9.pro
$SRC_ROOT/(module)> build debug=true



Instructions to Build an Installation Set

The build process (started with a top-level dmake or build --all in $SRC_ROOT/instsetoo) will create installation sets in English and German. A simple build in $SRC_ROOT/instsetoo will also create the installation sets, provided all other modules are already built.

If you have built an installation set earlier and want to re-build it, please delete the local outpath first:

$SRC_ROOT/instsetoo> rm -rf unxlngi4.prounxsols3.prowntmsci9.pro

The English installation set will be located at $SRC_ROOT/instsetoo/unxlngi4.prounxsols3.prowntmsci9.pro/01/normal. Execute the setup binary to install:

$SRC_ROOT> cd instsetoo/unxlngi4.prounxsols3.prowntmsci9.pro/01/normal
normal> ./setupnormal> setup.exe
The 01 in the path names indicates that the localisation is American English. This number corresponds to the international phone code for the USA. The German installation set will be located in a subdirectory 49. This scheme holds true for all localisations you may have chosen explicitly (see next section Building Localised Versions of OpenOffice.org).

For a network installation, use the -net option to setup. Details on the network installation process can be found at http://installation.openoffice.org/proposals/netinstall.html in the installation project webpage.

For information on creating an automated installation script and create a response file.




Building Localised Versions of OpenOffice.org

Running the configure script with the --with-lang option will introduce the build of additional language resources. This option will introduce a command in the environment settings file which in turn after execution sets a variable like, for instance, RES_FREN to TRUE in the case of french (You can also set this variable by hand in order to introduce another language). It is also possible to build more than one language at once. One language resource, however, will not be introduced that way: the help content! Clicking on 'help' would still open English help documents.

There is no automatic procedure yet to implement non-English help, but the additional manual effort is rather minimal: After building the source as described above, but before building the installation set, a zip-file with all help-content for the language of choice has to be unzipped into the directory

$SRC_ROOT/solver/641/unxlngi4.pro/pck.$SRC_ROOT/solver/641/unxsols3.pro/pck.$SRC_ROOT/solver/641/wntmsci9.pro/pck.

The filenames of these files contain a number code for the language, corresponding to the international phone code of a country in which that language is mainly spoken. For instance, the file helpcontent_34_unix.tgzhelpcontent_34_wnt.zip contains all help content for the Spanish localisation. The zipfiles themselves are available at ftp.services.openoffice.org/pub/OpenOffice.org/contrib/helpcontent/.

Having unzipped the helpcontent files in there, building of installation sets can be resumed or repeated (in case you already have build some), as described in the previous chapter. English installation sets will be located in

$SRC_ROOT/instsetoo/unxlngi4.prounxsols3.prowntmsci9.pro/01/normal, 
where 01 corresponds to the international phone code of the USA. If you have chosen, for instance, French (by configuring with the --with-lang=FREN option) you will find an additional directory called 33:
$SRC_ROOT/instsetoo/unxlngi4.prounxsols3.prowntmsci9.pro/33/normal.

Similarly, you will find 49 for German, 34 for Spanish, etc.

Localised help content is not yet available for all languages. In such cases, the English helpcontent will appear in the installations. For instance, when Danish is set with configure, you will find installation sets under the directory 45, but the help files will appear in English.