Building with ooobuild
- 1 Vanilla Up-stream builds
- 2 ooo-build builds
- 3 See also
Vanilla Up-stream builds
See the tools project for build guides for various platforms.
Also for OS/X see MacOSXBuildInstructions
For GNU/Linux Sparc, with gcc4.1 & gcj, see GNULinuxSparcPorting
If you are looking for additional building tips for Windows check this page first.
The build process is pretty complicated; you have a choice of commands now; although running both won't actually hurt:
./autogen.sh # only for the CVS version ./configure # the packaged version
This will guess which branch snapshot you want to build; if
you have other ideas use the --with-tag option; eg.
--with-tag=src680-m65 for a legacy branch.
If for some reason you have a 31337 multi-threaded computer, with great slabs of RAM; you'll want to use --with-num-cpus=8 etc. NB. it's not clever to force the build to swap like a demented pawnbroker by using an artificially high number; C++ compilation is seriously memory hungry.
In particular, building SRC680 requires a recent jdk & a
version of apache-ant. If you use a Novell system, just do:
sudo rug in apache-ant, alternatively download
a package from " rpmfind.net or failing that see Ant download
& set the ANT environment variable
appropriately before configuring.
Known ./configure parameters
where <package name> is replaced by the package to use. I don't have a particularly good understanding of its full effects beyond the fact that it (probably) doesn't then build its own copy of the package.
A recent version of automake, such as the 1.9 series.
If you don't have a working Java VM (i.e. any runtime), you should pass
--with-java=no to either
You need the Archive/Zip module for Perl. (perl-Archive-Zip on RPM-based distributions, libarchive-zip-perl on dpkg-based distributions)
You need the development package for Python (this would be python-devel on RPM-based distributions).
You need curl and curl-devel.
You need odbc_config to be present. On SUSE systems, this is in the unixODBC-devel package.
You need libsndfile and libsndfile-devel.
If you don't have a recent enough openldap, pass
You need neon and neon-devel.
You need qt3 and qt3-devel, or if you don't have the KDE development packages, pass
You need mozilla-nss-devel.
In SuSE, you need gecko-sdk.
By the time you've upgraded your system to the point that it
has all the packages you need to start building OO.o (mozilla etc. etc.) you're almost at the point that you
can download the bulk of the source. To do this, after a
successful configure simply type:
./download and wait.
If for whatever reason this fails, you can verify your download
by fetching the equivalent .md5 file & comparing it to
the result of
md5sum <archive>. The source
archives are http://go-ooo.org/packages/SRC680
- put the source in ooo-build/src.
This is the taxing bit - type
make and don't forget
to press enter. Quite possibly you want to log the output, so
make 2>&1 | tee /tmp/log.
Since ooo-build wraps the actual OO.o configuration & build process, there are a number of internal config checks that also need to pass. For a first time build it's well worth staying near the console while everything unpacks, and the internal configure runs; if that completes without incident - you're usually into the heavy-duty thumb twiddling.