Building on Linux

From Apache OpenOffice Wiki
Jump to: navigation, search

Template:Documentation/Building Guide AOO TOC


Overview

For general information on how to build Apache OpenOffice from source code, see the platform independent building guide.

Documentation linux.png This document contains the Linux specific details.


Build requirements

Additionally to the general build requirements you need. A number of libraries needed are provided in the source package. But some utilities and header files are not. (Installation depends on your distro).

What Description
C/C++ Compiler gcc >= 3.3

gcc 4.2.3 is the current reference compiler

autoconf Used to process the main configure parameters and generate the configure script
patch patch utility
make GNU make utility
rpm-build Tools and scripts to create RPM packages
X11 development libraries and header files They should be in place on most Linux distributions with development support (eg have compilers installed).
PAM PAM should be installed by default on most linux distributions. You will also need to install the development package.
cups cups is the backend printing system for Linux so you might already have this installed. You will also need to install the cups development package.
gtk2 (including the development headers). The gtk2 libraries are required for Linux builds since the gtk plugin for vcl is automatically built for this environment unless specifically not built with configure option "--disable-gtk".
libtiff (including development headers). The jpeg and tiff libraries are not required if

you disable the crash-reporter when running ./configure.

bison GNU parser generator.
flex Fast lexical analyzer
(possibly) ORBit 2.0 CORBA 2.4-compliant Object Request Broker (ORB)

The installation of required packages, mostly tools and development versions of libraries, depends on the distribution:

Fedora
   yum install GConf2-devel ant autoconf automake bison boost-devel    \
           cups-devel curl-devel db4-devel expat-devel firefox-devel   \
           flex freetype-devel gcc gcc-c++ gconf2-devel gnome-vfs2-devel gperf      \
           gstreamer-devel gstreamer-plugins-base-devel gtk2-devel     \
           java-1.6.0-openjdk-devel libIDL-devel libXaw-devel          \
           libxslt-devel make mono-devel openldap-devel openssl-devel pam-devel     \
           patch perl-Archive-Zip python-devel qt-devel rpm-build      \
           subversion tcsh unixODBC-devel xalan-j2                     \
           xml-commons-jaxp-1.3-apis xorg-x11-devel
Gentoo
Usable gentoo packages:
   app-arch/rpm
   app-arch/dpkg 
   dev-lang/python
   dev-libs/icu
   dev-java/lucene-analyzers
   dev-java/saxon
   dev-java/sun-jdk
   dev-perl/Archive-Zip
   dev-util/ccache
   media-gfx/xsane
   media-libs/vigra
OpenSUSE
You can use this information as a starting point for opensuse. One way to determine needed packages is to use the information provided by "configure". See the config.log.

You can start with this list (12.3 package names. It may need modifications depending on your config options):

  zypper install bison flex pam-devel cups-devel patch autoconf orbit2 orbit2-devel xorg-x11-devel
         libjpeg8 libjpeg8-devel libpng15-15 libpng15-devel libpng15-compat-devel rpm-build make
Ubuntu
Install packages with apt-get:
   sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \
       gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \
       libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev

The java package depends on your Ubuntu version. For 9.10 Karmic Koala and Ubuntu 10.04 Lucid Lynx you must activate the "ubuntu lucid partner" archive in the software sources and run

   sudo apt-get install sun-java6-jdk

For 11.04 run

   sudo apt-get install openjdk-6-jdk

To make sure that all packages are installed you could just simply run command:

   sudo apt-get build-dep openoffice.org
Personal tools