LibreOffice-
Introduction to LibreOffice
LibreOffice is a full-featured
office suite. It is largely compatible with Microsoft Office and is descended from
OpenOffice.org.
This package is known to build and work properly using an LFS-7.7
platform.
Package Information
Additional Downloads
LibreOffice Dependencies
Required
Archive::Zip-1.45, UnZip-6.0, Wget-1.16.1, Which-2.20, and Zip-3.0
Recommended
Note
Most of these packages are recommended because if they're not
installed, the build process will compile and install its own
(often older) version.
Boost-1.57.0, CLucene-2.3.3.4, Cups-2.0.2, cURL-7.40.0, dbus-glib-0.104, libjpeg-turbo-1.4.0, GLU-9.0.0, Graphite2-1.2.4, gst-plugins-base-0.10.36 or
gst-plugins-base-1.4.5, GTK+-2.24.26,
Harfbuzz-0.9.38, ICU-54.1, Little
CMS-2.6, librsvg-2.40.7, libxml2-2.9.2
and libxslt-1.1.28, MesaLib-10.4.5,
neon-0.30.1, NPAPI-SDK-0.27.2, NSS-3.17.4, OpenLDAP-2.4.40, OpenSSL-1.0.2,
Poppler-0.31.0, Python-3.4.2,
Redland-1.0.17, and unixODBC-2.3.2
Optional
Avahi-0.6.31, BlueZ-5.28,
desktop-file-utils-0.22, Doxygen-1.8.9.1 (not relevant if using
--disable-odk), GDB-7.9, GTK+-3.14.8 (see “Command Explanations”), kdelibs-4.14.5,
libatomic_ops-7.4.2, MariaDB-10.0.16 or MySQL, MIT Kerberos
V5-1.13.1, OpenJDK-1.8.0.31, PostgreSQL-9.4.1, SANE-1.0.24, VLC-2.1.5, CoinMP, Cppunit,
firebird,
glew
(OpenGL Extension Wrangler Library), hamcrest, Hunspell,
Hyphen,
iwyu,
libabw,
libcdr,
libcmis, libebook,
libexttextcat,
libfreehand,
liblangtag, libmspub,
libmwaw, libodfgen,
libpagemaker,
librevenge
(WordPerfect Document importer), libvisio,
libwpd,
libwpg,
libwps,
lp_solve, mdds,
MyThes,
ogl-math - OpenGL
Mathematics (GLM), OpenCOLLADA,
Orcus,
VIGRA, and Zenity
There are many optional dependencies not listed here. They can be
found in “download.lst”
(source directory).
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/libreoffice
Installation of LibreOffice
Note
LibreOffice must be built in a graphical environment - the build
will fail otherwise.
Important
Unlike the other packages, we suppose that you have not yet
unpacked the package. This is so because the --no-overwrite-dir
switch is needed in case you
unpack as the root
user.
tar -xf libreoffice-.tar.xz --no-overwrite-dir &&
cd libreoffice-
Create symlinks to tarballs from the source directory so they won't
get downloaded again:
install -dm755 external/tarballs &&
ln -sv ../../../libreoffice-dictionaries-.tar.xz external/tarballs/ &&
ln -sv ../../../libreoffice-help-.tar.xz external/tarballs/
If you have downloaded the translations tarball, create a symlink:
ln -sv ../../../libreoffice-translations-.tar.xz external/tarballs/
Note
During the build process, some packages will be downloaded
(including the ones listed as recommended and optional
dependencies) if they are not present on the system. Because of
this, build time may vary from the published time more than
usual.
Due to the large size of the package, you may prefer to install it
in /opt
, instead of /usr
. Depending on your choice, replace
<PREFIX>
by
/usr
or by /opt/libreoffice-
:
export LO_PREFIX=<PREFIX>
For i686 systems, fix a problem introduced by gcc-4.9.0:
patch -Np1 -i ../libreoffice--gcc_4_9_0-2.patch
Locales "en-US" and "pt-BR", you will find below, are just
examples; you should change them to suit your needs - you might
want to read the "Command Explanations", further below, before
proceeding.
Prepare LibreOffice for
compilation by running the following commands:
sed -e "/gzip -f/d" \
-e "s|.1.gz|.1|g" \
-i bin/distro-install-desktop-integration &&
sed -e "/distro-install-file-lists/d" -i Makefile.in &&
sed -e "/ustrbuf/a #include <algorithm>" \
-i svl/source/misc/gridprinter.cxx &&
chmod -v +x bin/unpack-sources &&
./autogen.sh --prefix=$LO_PREFIX \
--sysconfdir=/etc \
--with-vendor="BLFS" \
--with-lang="en-US pt-BR" \
--with-help \
--with-myspell-dicts \
--with-alloc=system \
--without-java \
--without-system-dicts \
--disable-gconf \
--disable-odk \
--disable-postgresql-sdbc \
--enable-release-build=yes \
--enable-python=system \
--with-system-boost \
--with-system-clucene \
--with-system-cairo \
--with-system-curl \
--with-system-expat \
--with-system-graphite \
--with-system-harfbuzz \
--with-system-icu \
--with-system-jpeg \
--with-system-lcms2 \
--with-system-libpng \
--with-system-libxml \
--with-system-mesa-headers \
--with-system-neon \
--with-system-npapi-headers \
--with-system-nss \
--with-system-odbc \
--with-system-openldap \
--with-system-openssl \
--with-system-poppler \
--with-system-redland \
--with-system-zlib \
--with-parallelism=$(getconf _NPROCESSORS_ONLN)
The instructions below will only build the package without running
any unit tests. If you prefer to run the unit tests, replace
make build with
make.
Build the package (remember that it must be done in a graphical
environment):
make build
Now, as the root
user:
make distro-pack-install &&
install -v -m755 -d $LO_PREFIX/share/appdata &&
install -v -m644 sysui/desktop/appstream-appdata/*.xml \
$LO_PREFIX/share/appdata
If installed in /opt/libreoffice-
some additional steps are necessary. Issue the following commands,
as root
user:
if [ "$LO_PREFIX" != "/usr" ]; then
# This symlink is necessary for the desktop menu entries
ln -sv -f $LO_PREFIX/lib/libreoffice/program/soffice \
/usr/bin/libreoffice &&
# Icons
for i in $LO_PREFIX/share/icons/hicolor/32x32/apps/*; do
ln -svf $i /usr/share/pixmaps
done; unset i &&
# Desktop menu entries
pushd $LO_PREFIX/lib/libreoffice/share/xdg &&
for i in *; do
ln -svf $LO_PREFIX/lib/libreoffice/share/xdg/$i \
/usr/share/applications/libreoffice-$i
done; unset i &&
popd &&
# Man pages
for i in $LO_PREFIX/share/man/man1/*; do
ln -svf $i /usr/share/man/man1/
done; unset i
fi
If you have installed desktop-file-utils-0.22, and you wish
to update the MIME database, issue, as the root
user:
update-desktop-database
Command Explanations
sed -e ...: The first
sed prevents compression of the manual pages, the second one
prevents install from failing and the third one includes a missing
header without which make
build fails.
chmod -v +x ...: Fix
the unpack script's permissions.
--with-vendor=BLFS
: This
switch sets BLFS as the vendor which is mentioned when you click
"About" on the toolbar.
--with-lang="en-US pt-BR"
:
This switch sets what languages to support. To list several
languages, separate them with a space. For all languages, use
--with-lang=ALL
.
Note
For a list of the available languages, you can look at the
translations tarball: tar -tf
../libreoffice-translations-.tar.xz | grep translations/source|
cut -d/ -f4 | uniq.
--with-help
: Without this
switch, the help files are not built.
--with-myspell-dicts
: This
switch adds myspell dictionaries to the LibreOffice installation set.
--with-alloc=system
: This
switch tells LibreOffice to use
system allocator instead of the internal one.
--without-system-dicts
:
This switch disables use of dictionaries from system paths, so the
ones installed by this package are used.
--without-java
: This switch
disables Java support in
LibreOffice.
--disable-gconf
: This
switch disables compiling LibreOffice with the deprecated GNOME configuration system support.
--disable-odk
: This switch
disables installing the office development kit. Remove if you want
to develop a LibreOffice based
application.
--disable-postgresql-sdbc
:
This switch disables compiling LibreOffice with the ability to connect to a
PostgreSQL database. Remove it if
you would like LibreOffice to be
able to connect to a PostgreSQL
database. If you have installed PostgreSQL on your system and would like
LibreOffice to use that rather
than compile its own copy, use the --with-system-postgresql
switch.
--enable-release-build=yes
:
This switch enables a Release Build. LibreOffice can be built as a Release Build or
as a Developer Build, because their default installation paths and
user profile paths are different. Developer Build displays the
words "Dev" and "Beta" in several places (e.g, menu and splash
screen).
--enable-python=system
:
This switch tells LibreOffice to
use installed Python 3 to build
the translations instead of the bundled one.
--with-system-*
: These
switches prevent LibreOffice from
trying to compile its own versions of these dependencies. If you've
not installed some of the dependencies, remove the corresponding
switches.
--with-parallelism=$(getconf
_NPROCESSORS_ONLN)
: This switch tells LibreOffice to use all your CPUs to compile in
parallel and speed up the build.
--disable-cups
: Use this switch if you
don't need printing support.
--disable-dbus
: Use this switch if
you've not installed D-Bus-1.8.0 or later. It also disables
Bluetooth support and font install via PackageKit.
--enable-gstreamer-0-10
: Use this
switch if you want to use gst-plugins-base-0.10.36 instead of
gst-plugins-base-1.4.5 for the avmedia
module.
--disable-gstreamer-1-0
: Use this
switch if you have not installed gst-plugins-base-1.4.5.
--enable-gtk3
: Use this switch if you
want to build the GTK+ 3
integration module. This is experimental and may not work.
--enable-kde4
: Use this switch if you
want to build the KDE integration
module.
Contents
Installed Programs:
libreoffice, lobase, localc, lodraw,
loffice, lofromtemplate, loimpress, lomath, loweb, lowriter,
soffice and unopkg; several programs under
$LO_PREFIX/lib/libreoffice/program
Installed Libraries:
several libraries under
$LO_PREFIX/lib/libreoffice/{ure/lib,program}
Installed Directory:
$LO_PREFIX/lib/libreoffice
Short Descriptions
lobase
|
is a database manager.
|
localc
|
is a spreadsheet program.
|
lodraw
|
is a vector graphics editor and diagramming tool.
|
loimpress
|
can edit and display PowerPoint presentations.
|
lomath
|
is a mathematical formula editor.
|
lowriter
|
is a word processor.
|
unopkg
|
is a tool to manage LibreOffice extensions from the
command line.
|
Last updated on 2015-02-27 19:25:31 -0500