Compilation (go-ooo) 2007-10-14

Ce qui n'a pas fonctionné la première fois

Avec --with-distro=Debian sur Etch, un configure arrête puisqu'il demande GDK+ 2.10 et Etch ne possède que 2.8. Note: il faudrait essayer avec l'option --with-distro=DebianEtch.

Ce qui n'a pas fonctionné la deuxième fois

Simple, Détection de Python.h, j'ai dû installé python2.4-dev. python2.5-dev ne fonctionnait pas car les INCLUDE PATH n'étaient pas les bons.

Simple, Détection de gperf, j'ai dû installé gperf.

Compliqué, Détection de libneon, j'ai dû recompilé libneon en utilisant les sources CVS car l'installation de libneon25-dev ne suffisait pas.

Voici le message d'erreur et les instructions et que j'ai dû faire:

ERROR: error 65280 occurred while making /home/ooo-build/ooo-build/build/current/ucb/source/ucp/webdav
Attention: if you build and deliver the above module(s) you may prolongue your the build issuing command "build --from ucb"
cd /home/ooo-build/ooo-build/build/current/
source LinuxX86Env.Set.sh
cvs -d :pserver:anoncvs@anoncvs.services.openoffice.org/cvs checkout -r SRC680_m233 external/neon
cd external
echo "el      external\neon nmake     -       all     neon NULL" >> prj/build.lst
build --from external
# deliver
cd ../../
make

Ce qui n'a pas fonctionné la troisième fois

Il manque vraiment neon. Il faut utiliser --with-system-neon ou l'ajouter dans distro-configs/Debian.conf.in and distro-configs/Debian.conf

Préparation

Une partition debian SID avec au moins 15 Go. Présentement, sur ma partition, 12 Go est utilisé pour OpenOffice et ses dépendances avec un petit serveur xserver-xorg minimal (pas de window manager).

Installer les packages suivants avec apt-get:

# pour télécharger le code source
apt-get install bzip2 subversion

# pour lancer le autogen.sh et les dépendances
apt-get install build-essential libpam-dev flex bison ccache autoconf automake
apt-get install libarchive-zip-perl zip unzip libdb4.4-dev libpq-dev libcurl3-dev 
apt-get install unixodbc-dev libldap2-dev libxul-dev libsane-dev libxaw6-dev libsndfile-dev  
apt-get install libgnome-vfsmm-2.6-dev libgtk2.0-dev libgstreamer-plugins-base0.10-dev 
apt-get install libcupsys2-dev xsltproc libxslt-dev libstartup-notification0-dev  
apt-get install ant gcj gjdoc java-gcj-compat-dev libmono-dev 
apt-get install python2.4-dev gpref libneon25-dev

# 1.2 Go d'utilisé à ce stade

Ensuite créer un usager ooo-build

useradd -m ooo-build 
su - ooo-build

Installation

Commandes

cd /home/ooo-build
svn checkout http://svn.gnome.org/svn/ooo-build/trunk ooo-build
cd ooo-build
echo "--with-system-neon" >> distro-configs/Debian.conf.in
./autogen.sh --with-distro=Debian --with-lang=fr --disable-access --disable-kde \
             --with-num-cpus=2 --with-gcc-speedup=ccache --with-drink=water
./download # 1.6 Go d'utilisé à ce stade
make
su - 
# cd /home/ooo-build/ooo-build
# bin/ooinstall /opt
# exit
/opt/program/soffice

Ce qu'il télécharge

# wget http://download.go-oo.org//OOG680/cli_types.dll
# wget http://download.go-oo.org//OOG680/cli_types_bridgetest.dll
# wget http://cairographics.org/releases//cairo-1.0.2.tar.gz
# wget http://download.go-oo.org//SRC680/glitz-0.4.3.tar.gz
# wget http://download.go-oo.org//OOG680/oog680-m5-core.tar.bz2 # 138 M
# wget http://download.go-oo.org//SRC680/biblio.tar.bz2
# wget http://tools.openoffice.org/unowinreg_prebuild/680//unowinreg.dll
# wget http://download.go-oo.org//OOG680/oog680-m5-lang.tar.bz2
# http://download.go-oo.org//SRC680/lp_solve_5.5.0.10_source.tar.gz
# http://download.go-oo.org//libwpd/libwpd-0.8.11.tar.gz
# http://download.go-oo.org//SRC680/libwps-0.1.0.tar.gz
# http://download.go-oo.org//SRC680/libwpg-0.1.0.tar.gz
# http://cairographics.org/snapshots//libsvg-0.1.4.tar.gz
# http://download.go-oo.org//SRC680/oox.2007-09-05.tar.bz2
# http://download.go-oo.org//OOG680/oog680-m5-sdk_oo.tar.bz2 

Information diverses

Pour avoir les variables d'environnement (bash):
1. cd ooo-build/build/current 
2. source LinuxX86Env.Set.sh

Pour bâtir un projet (un répertoire avec prj):
1. avoir les variables d'environnement
2. cd ooo-build/build/current/"nom du répertoire"
3. build --from "nom du repertoire"
Exemple de répertoire/projet: external, pyuno, ucb...

Pour télécharger à partir du CVS un projet:
1. cd ooo-build/build/current
2. cvs -d :pserver:anoncvs@anoncvs.services.openoffice.org/cvs checkout -r SRC680_m233 "nom du projet"

Pour télécharger à partir du CVS le sous-répertoire neon du projet "external":
1. cd ooo-build/build/current
2. cvs -d :pserver:anoncvs@anoncvs.services.openoffice.org/cvs checkout -r SRC680_m233 external/neon

Packages nécessaire sur sid (liste complète)

# subversion: libapr1 libaprutil1 libneon26 libsqlite3-0 libsvn1 subversion
# libarchive-zip-perl: libarchive-zip-perl libcompress-raw-zlib-perl libcompress-zlib-perl libio-compress-base-perl 
#                      libio-compress-zlib-perl
# libmono-dev: libglib2.0-0 libglib2.0-dev libmono-dev libmono0 libpcre3 pkg-config
# gcj: defoma file fontconfig fontconfig-config gcj gcj-4.2 gcj-4.2-base gij gij-4.2 java-common libasound2 libatk1.0-0
#      libcairo2 libcupsys2 libdatrie0 libecj-java libexpat1 libfontconfig1 libfreetype6 libgcj-bc libgcj-common libgcj8-1
#      libgcj8-1-awt libgcj8-dev libgcj8-jar libgtk2.0-0 libgtk2.0-common libice6 libjpeg62 libkeyutils1 libkrb53 libmagic1
#      libpango1.0-0 libpango1.0-common libpng12-0 libsm6 libthai-data libthai0 libtiff4 libx11-6 libx11-data libxau6
#      libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxft2 libxi6 libxinerama1 libxrandr2 libxrender1 
#      libxtst6 ttf-dejavu ttf-dejavu-core ttf-dejavu-extra ucf x11-common zlib1g-dev
# gjdoc: antlr debhelper gettext gettext-base gjdoc html2text intltool-debian po-debconf
# libxslt-dev: libxml2 libxml2-dev libxslt1-dev libxslt1.1
# libdb4.4-dev: libdb4.4-dev
# libpq-dev: comerr-dev libkadm55 libkrb5-dev libpq-dev libpq5 libssl-dev
# libcurl3-dev: libcurl3 libcurl4-openssl-dev libidn11 libidn11-dev libldap2-dev libssh2-1 libssh2-1-dev
# unixodbc-dev: libaudio2 liblcms1 libltdl3 libltdl3-dev libmng1 libodbcinstq1c2 libqt3-mt libxt6 odbcinst1debian1 unixodbc unixodbc-dev 
# libldap2-dev: libldap2-dev
# libxul-dev: libhunspell-1.1-0 libidl0 libmozjs-dev libmozjs0d libnspr4-0d libnspr4-dev libnss3-0d libnss3-dev libxul-common libxul-dev 
#   libxul0d xulrunner 
# libsane-dev: libdbus-1-3 libexif12 libgphoto2-2 libgphoto2-port0 libhal1 libieee1284-3 libieee1284-3-dev libjpeg62-dev libsane libsane-dev 
#   libtiff4-dev libtiffxx0c2 libusb-dev
# libxaw6-dev: libice-dev libsm-dev libx11-dev libxau-dev libxaw-headers libxaw6 libxaw6-dev libxdmcp-dev 
#   libxext-dev libxmu-dev  libxmu-headers libxmu6 libxpm-dev libxpm4 libxt-dev x11proto-core-dev x11proto-input-dev 
#   x11proto-kb-dev x11proto-xext-dev xtrans-dev
# libsndfile-dev: libflac-dev libflac8 libogg-dev libogg0 libsndfile1 libsndfile1-dev
# libgnome-vfsmm-2.6-dev: dbus dbus-x11 gconf2 gconf2-common gnome-mime-data libavahi-client-dev libavahi-client3 libavahi-common-data
#   libavahi-common-dev libavahi-common3 libavahi-glib-dev libavahi-glib1 libdbus-1-dev libdbus-glib-1-2 libfam0
#   libgconf2-4 libgconf2-dev libgcrypt11-dev libglibmm-2.4-1c2a libglibmm-2.4-dev libgnome-vfsmm-2.6-1c2a
#   libgnome-vfsmm-2.6-dev libgnomevfs2-0 libgnomevfs2-common libgnomevfs2-dev libgnutls-dev libgnutlsxx13 libgpg-error-dev
#   libhal-storage1 libidl-dev liblzo2-dev libopencdk10-dev liborbit2 liborbit2-dev libpopt-dev libselinux1-dev
#   libsepol1-dev libsigc++-2.0-dev libtasn1-3-dev mime-support psmisc python python-minimal python2.4 python2.4-minimal
#   shared-mime-info
# libgtk2.0-dev:  libatk1.0-dev libcairo2-dev libexpat1-dev libfontconfig1-dev libfreetype6-dev libgtk2.0-dev libpango1.0-dev
#   libpng12-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev
#   libxrandr-dev libxrender-dev x11proto-composite-dev x11proto-damage-dev x11proto-fixes-dev x11proto-randr-dev
#   x11proto-render-dev x11proto-xinerama-dev

# libcupsys2-dev: libcupsys2-dev
# xsltproc: xsltproc
# zip unzip: zip unzip
# libgstreamer-plugins-base0.10-dev : check libgstreamer-plugins-base0.10-0 
#   libgstreamer-plugins-base0.10-dev libgstreamer0.10-0 libgstreamer0.10-dev
# libstartup-notification0-dev: libstartup-notification0 libstartup-notification0-dev
# ant: ant libjaxp1.3-java libxerces2-java
# java-gcj-compat-dev: ecj ecj-gcj fastjar gappletviewer-4.2 java-gcj-compat java-gcj-compat-dev libbcel-java 
#   libecj-java-gcj liblog4j1.2-java libmx4j-java libregexp-java python-central

# python2.4-dev: python2.4-dev
# gperf: gperf
# libneon25-dev: libneon25 libneon25-dev