Ubuntu Build Instructions

From Apache OpenOffice Wiki
Revision as of 13:36, 17 April 2007 by Kami (Talk | contribs)

Jump to: navigation, search

This tutorial will assume a stock Ubuntu 5.10 (Breezy) system as a starting point.

Obtaining ooo-build

One may obtain the stable 2.0.2 version of ooo-build via CVS with the following commands:

export CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome'
cvs login
cvs -z3 checkout -P ooo-build
cvs update -Pd -r ooo-build-2-0-2

You should then enter the ooo-build directory and run ./autogen.sh --with-distro=Ubuntu. Most likely you'll also want to add the --disable-kde flag (unless you're using Kubuntu).

Additional Required Packages

Packages may be obtained as follows:

 sudo apt-get install package_name [additional_package(s)]

To obtain the source, you need:

  • cvs

To complete autogen.sh, you need:

  • automake1.9
  • build-essential
  • libpam0g-dev
  • libpng12-dev
  • flex
  • bison
  • libgtk2.0-dev

For make to finish its configuration stage, you need:

  • tcsh
  • libcupsys2-dev
  • java-gcj-compat-dev
  • libarchive-zip-perl
  • libjpeg62-dev
  • libxml2-dev
  • python-dev
  • libdb4.3-dev
  • libdb4.3-java-dev
  • libcurl3-dev
  • unixodbc-dev
  • libldap2-dev
  • mozilla-dev
  • libnss-dev
  • libsane-dev
  • libxaw-headers
  • libaudio-dev
  • libsndfile1-dev
  • libneon24-dev
  • libgnomevfs2-dev
  • kdebase-dev (KDE only?)
  • libstartup-notification0-dev
  • ant
  • libdbus-glib-1-dev (Ubuntu version is not high enough! 0.36.2 < 0.60)
  • firefox-dev (if --with-firefox used)
  • libgstreamer0.10-dev
  • libgstreamer-plugins-base0.10-dev

Far into the main build commencing section, you'll realize you need these:

  • ?
  • ??libmono-dev
  • [please help populate the rest of this list!]
  • libbonobo2-dev ??
  • libxaw7-dev

Necessary ./configure Flags

  • --disable-gtk — This has to be disabled, otherwise make will get hung up on the dbus-glib-1 version 0.60 requirement. The highest version of that package available for Ubuntu is 0.36.2.

Failed patches

Some of the patches listed in ooo-build/patches/src680/apply may not apply successfully. You can try to comment them out in the apply file, but this is an experimental solution...

Tips

A shell script like the one below will alert your attention upon completion of the quite lengthy build process. Run it after ./download completes in place of make.

#!/bin/bash
echo "Starting 'make' wrapper..."
cd ~/ooo-build
/usr/bin/time --quiet -f %E make
echo "Compilation finished."
mplayer -really-quiet ~/Music/My_Music_File.mp3

For the purpose of this tutorial, save the file as make_wrapper.sh. To make it executable, type chmod 744 make_wrapper.sh.

Development Environment Preparation Script

Note: User interaction is required first to enter a password for apt-get, and again much later to hit Enter when prompted for a CVS password.

#!/bin/bash
echo "Starting Ubuntu ooo-build preparations..."

sudo apt-get -y install cvs automake1.9 build-essential libpam0g-dev libpng12-dev flex bison libgtk2.0-dev \
tcsh libcupsys2-dev java-gcj-compat-dev libarchive-zip-perl libjpeg62-dev libxml2-dev python-dev libdb4.3-dev \
libdb4.3-java-dev libcurl3-dev unixodbc-dev libldap2-dev mozilla-dev libnss-dev libsane-dev libxaw-headers \
libaudio-dev libsndfile1-dev libneon24-dev libgnomevfs2-dev libstartup-notification0-dev ant

export CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome'
cvs login
cvs -z3 co -P ooo-build
cvs up -Pd -r ooo-build-2-0-2

echo "Preparations complete."

cd ~/ooo-build
./autogen.sh --with-distro=Ubuntu --disable-kde
./download

#Now comment out failing patch:
cp patches/src680/apply patches/src680/apply~
sed 's/^ubuntu-dictionary\.diff/#&/' <patches/src680/apply~ >patches/src680/apply
rm patches/src680/apply~

make
#Or if you want an audible alert,
#~/make_wrapper.sh

See also

Personal tools