Hello
So, I think I have found a solution to compile LibreOffice core. I did it in a Virtualbox (Version 5.1.12 r112440) Debian 8.7 client environment and also in a normal Debian 8.7 environment on a Thinkpad X220.
On the Thinkpad I has 8GB RAM and a 250GB SSD. In Virtualbox the Debian client has 10GB RAM and a 60GB vdi disk. The Virtualbox system runs on a Thinkpad T460p with 16GB RAM and a 500GB SSD. The Thinkpad X220 runs an i5-2520M and the Thinkpad runs a i7-6700HQ.
In order you can reproduce my Debian 8.7 installation I would like to add the output of the command âdpkg-query -lâ as a text file, but unfortunately I do not know how to do that in this forum. Copy/paste wouldnât be a good idea, because the text file has more than 1500 lines (Debian packages). The text file bases on the system I managed to compile LibreOffice core first. On the base of this Debian 8.7 install I adapted the above mentioned Debian 8.7 environments. The main things I had to change was to (apt-get) remove anacron, cpp-4.8, fakeroot, gcc-4.8, libgcc-4.8-dev, libfakeroot, linux-compiler-gcc-4.8-x86, linux-headers-3.16.0-4-all. Then I did also a apt-get autoremove. Then I (apt-get) install attr, libpagemaker-dev, checkinstall.
On all Debian 8.7 systems I set up a minimal XFCE4 desktop:
apt-get install xorg lightdm lightdm-gtk-greeter xfce4-panel xfce4-session xfce4-settings xfce4-terminal gtk2-engines-xfce gvfs-backends xfwm4 xfconf xfdesktop4 desktop-base thunar thunar-volman thunar-archive-plugin p7zip-full gksu sudo policykit-1-gnome firefox-esr synaptic geany geany-plugins
The desktop I install after set up Debian using
http://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-8.7.1-amd64-netinst.iso
and only install options openssh server and standard utils.
Compile LibreOffice Core:
Then first I compiled and installed poco 1.7.7. I downloaded the tarball poco-1.7.7-all.tar.gz from their homepage and then:
cd /usr/local/src/
mv /home/user/Downloads/poco-1.7.7-all.tar.gz .
tar xzvf poco-1.7.7-all.tar.gz
chown -R root.staff poco-1.7.7-all
cd poco-1.7.7-all
./configure --prefix=/usr/local
make
checkinstall
I normally use checkinstall to install self compiled packages. This allows me to remove the self compiled packages. If you doesnât know checkinstall, there are two important settings: package name and version. In order to prevent conflicts I add to the package name -rw (libpoco-rw), secont the version must begin with a number. And I always install self compiled packages under /usr/local. Debian in default finds libraries under /usr/local/lib.
Next, I create a user lool:
useradd -U -m -d /usr/local/CollaboraOffice -s /bin/false lool
Then I create the environment for compiling LibreOffice core:
apt-get install git libkrb5-dev make openssl g++ libtool
apt-get build-dep libreoffice
Hint: I compared the installed packages (dpkg-query -l) with the first system I managed to compile core after the above commands. So I had to removed and add some packages (see above).
Downloaded the source of LibreOffice core (version collabora 5.1):
cd /usr/local/src/
mkdir collabora
cd collabora/
git clone -b âdistro/collabora/cp-5.1â âhttps://github.com/LibreOffice/core.gitâ "core"
cd âŚ
chown -R lool.lool collabora/
cd collabora/core/
Then I configured LibreOffice core the following way:
sudo -u lool ./autogen.sh --prefix=/usr/local
âwith-lang=âdeâ
âwith-parallelism
âenable-release-build=yes
âwith-help --with-myspell-dicts
âwith-alloc=system
âwithout-java
âwithout-system-dicts
âdisable-dconf
âdisable-odk
âdisable-firebird-sdbc
âdisable-postgresql-sdbc
âenable-python=system
âwith-system-apr
âwith-system-boost=yes
âwith-system-cairo
âwith-system-clucene
âwith-system-curl
âwith-system-expat
âwith-system-graphite
âwith-system-harfbuzz
âwith-system-icu
âwith-system-jpeg
âwith-system-libabw
âwith-system-libcdr
âwith-system-libebook
âwith-system-libetonyek
âwith-system-liblangtag
âwith-system-libmspub
âwith-system-libmwaw
âwith-system-libodfgen
âwith-system-libpagemaker
âwith-system-librevenge
âwith-system-libvisio
âwith-system-libwpd
âwith-system-libwpg
âwith-system-libexttextcat
âwith-system-lcms2
âwith-system-libatomic_ops
âwith-system-libpng
âwith-system-libxml
âwith-system-neon
âwith-system-nss
âwith-system-odbc
âwith-system-openldap
âwith-system-openssl
âwith-system-poppler
âwith-system-redland
âwith-system-serf
âwith-system-zlib
âwith-boost-libdir=/usr/lib/x86_64-linux-gnu
And now I use (and this may prevent the crashes, I suppose)
make
When compiling failed, I always used sudo -u lool make. But I havenât tested it yet. I used sudo -u lool make because I read that one cannot compile LibreOffice core as root. But perhaps they only ask for lool, when one configure LibreOffice core. Iâm going to test sudo -u lool make again.
Till now i havenât installed the compiled LibreOffice core! So I doesnât know if it works.
Kind regards.
Modifyed some things:
added --enable-release-build=yes \ in the autogen.sh configuration
changed prefix path to --prefix=/usr/local
Under Debian 8.7 with the old autogen.sh configuration the checkinstall failed. The new worked in a Virtualbox Ubuntu 16.04 client. Iâm going to test it in Debian 8.7.
It installs Collabora core under /usr/share/doc and /usr/local/lib.
It works on Virtualbox Debian 8.7 client too.
Compile LibreOffice Online (as user root):
apt-get install libcap-dev libcap-ng-dev python-polib python3-polib libcunit1 libcunit1-dev
apt-get install npm nodejs-legacy
npm install -g npm
npm install -g jake
Download LibreOffice Online:
cd /usr/local/src/collabora/
git clone "https://github.com/LibreOffice/online.git"
chown -R root.staff online/
cd online
Prepare configuration:
libtoolize
aclocal
automake --add-missing
autoreconf
autoheader
automake --add-missing
I had to run automake twice, because the first time i got an error!
Configure LibreOffice Online:
./configure --prefix=/usr/local/lib/loolwsd
âbindir=/usr/local/lib/loolwsd/bin
âsysconfdir=/usr/local/lib/loolwsd/etc
âenable-silent-rules
âwith-lokit-path=/usr/local/src/collabora/online/bundled/include
âwith-lo-path=/usr/local/lib/collaboraoffice
âwith-poco-includes=/usr/local/include
âwith-poco-libs=/usr/local/lib
There are two options one can set the limits of connections and the limit of documents:
âmax-connections
âmax-documents
(see ./configure --help)
Compile:
make
Install:
checkinstall
In Debian 8.7 one have to adapt /etc/checkinstallrc. Change TRANSLATE=1 to TRANSLATE=0 (ad least on a German environment). Otherwise checkinstall fails to create install pathes.
I testet it in Ubuntu 16.04 Virtualbox client and in a Debian 8.7 Virtualbox client.