LibreOffice is a powerful office suite; its clean interface
and powerful tools let you unleash your creativity and grow your
productivity. LibreOffice embeds several applications that make it the
most powerful Free & Open Source Office suite on the market: Writer,
the word processor, Calc, the spreadsheet application, Impress, the
presentation engine, Draw, our drawing and flowcharting application,
Base, our database and database frontend, and Math for editing
mathematics.
This SlackBuild builds the entire project from its source code. In
seeking a fully functional LibreOffice, most optional features are
included by default, using internal versions of any external software
components that may be needed. This results in a very small number of
directly required additional software packages.
However most of this additional software is also available as SBo
SlackBuilds. During configuration, the LibreOffice SlackBuild will
detect any such packages that are already installed and use them in
preference to building its own internal versions. Packages from SBo
that will be use in this way are:
CoinMP cppunit glm libabw libcdr libcmis libe-book libeot
libepubgen libexttextcat libfreehand libmspub libmwaw
libnumbertext liborcus libpagemaker libqxp libnumbertext
libstaroffice libtommath libwps libzmf lpsolve mythes postgresql
qt5 valgrind ucpp unixODBC avahi libetonyek xmlsec
Remember, these packages are not essential but entirely optional. If
not found, LibreOffice will simply build its own internal versions.
Also keep in mind that any package from the above list which is
detected and used when building LibreOffice will most likely become
a runtime dependency too e.g. if avahi is detected and used at build
time, it will also need to be installed at run time.
Build time environment variables that may be set to vary features are
as follows:
1. support additional languages by overriding the LOLANGS variable,
whose default setting is LOLANGS="de es fr id it ja nl vi zh-CN".
Note that en-US is always added to whatever LOLANGS is set. Thus
building with, for example,
LOLANGS="de" sh LibreOffice.SlackBuild
would build LibreOffice with support for german and US english
languages. Additionally, setting LOLANGS="ALL" will build in
support for all available languages.
2. A number of Java Development Kits are suitable for building
LibreOffice. Since Slackware-15.0 and LiberOffice-7.3.1.3, the
default JDK is zulu-openjdk11. Other JDKs will probably work if
the JAVA_HOME environment variable is set appropriately in a file
in /etc/profile.d/, where this SlackBuild will search.
It is also possible to build LibreOffice without any Java support
(with somewhat reduced capability in LO Base) by running:
JAVA=no sh LibreOffice.SlackBuild
3. The number of parallel make jobs used by the LibreOffice build
system defaults to the number of available cpu cores. If the
MAKEFLAGS environment variable contains the -j option e.g.
MAKEFLAGS=-j6
then the SlackBuild will pass this to the LibreOffice build system
(via its --with-parallelism configure option). The number of parallel
jobs is further controlled by the PARALLEL environment variable e.g:
PARALLEL=1 sh LibreOffice.SlackBuild
which would limit building to a single make process, overriding any
value set with the -j option in MAKEFLAGS.
4. Use of ccache during building is turned off by default to save disk
space (and possible build failure due to lack of disk space). It may
be reinstated by setting the USE_CCACHE environment to "yes" e.g.
USE_CCACHE=yes sh LibreOffice.SlackBuild
5. PyUNO is a Python interface to the LibreOffice API. It is disabled by
default due to interference with Openshot (therefore possibly other
packages). It may be enabled by setting the PYUNO environment
variable e.g.
PYUNO=yes sh LibreOffice.SlackBuild
Even without PyUNO enabled in this way, PyUNO scripts may still be
executed by suitably extending the PYTHONPATH in the environment at
runtime e.g.
PYTHONPATH=/usr/lib64/libreoffice/program my_python_uno_script.py
Spell checking of documents at runtime requires installation of a
suitable wordlist for the language concerned. This can be achieved in
either of two ways:
1. Build & install hunspell-en (or hunspell-es, hunspell-pl) from SBo
2. Search for the desired language dictionary at:
http://extensions.libreoffice.org/extension-center?getCategories=Dictionary
and download the relevant file e.g. dict-en.oxt. Now open LO's
extension manager and press the "Add..." button which will open a file
browser with which to locate and open the downloaded .oxt file. The
new dictionary will now appear in the Extension Manager.
Some people have experienced difficulties building LibreOffice while a
previous version is still installed. It is therefore recommended that
any previous version should be removed before building LibreOffice. As
well as removing any LibreOffice installation, it is important to also
clear environment variables that were set by the installation i.e.
/sbin/removepkg LibreOffice
unset UNO_PATH
unset URE_BOOTSTRAP
Good luck!