mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-01-24 15:12:11 +08:00
7be6394d84
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@10091 af4574ff-66df-0310-9fd7-8a98e5e911e0
496 lines
17 KiB
XML
496 lines
17 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
<!ENTITY % general-entities SYSTEM "../../general.ent">
|
|
%general-entities;
|
|
|
|
<!ENTITY libreoffice-core-download-http
|
|
"http://download.documentfoundation.org/libreoffice/src/&libreoffice-version;/libreoffice-core-&libreoffice-version;.2.tar.xz">
|
|
<!ENTITY libreoffice-core-download-ftp " ">
|
|
<!ENTITY libreoffice-core-md5sum "d22cd79e7463ac4caf0a4b47d78a82ac">
|
|
<!ENTITY libreoffice-core-size "99 MB">
|
|
<!ENTITY libreoffice-buildsize "6.1 GB (337 MB installed)">
|
|
<!ENTITY libreoffice-time "121 SBU">
|
|
]>
|
|
|
|
<sect1 id="libreoffice" xreflabel="libreoffice-&libreoffice-version;">
|
|
<?dbhtml filename="libreoffice.html"?>
|
|
|
|
<sect1info>
|
|
<othername>$LastChangedBy$</othername>
|
|
<date>$Date$</date>
|
|
</sect1info>
|
|
|
|
<title>libreoffice-&libreoffice-version;.2</title>
|
|
|
|
<indexterm zone="libreoffice">
|
|
<primary sortas="a-libreoffice">libreoffice</primary>
|
|
</indexterm>
|
|
|
|
<sect2 role="package">
|
|
<title>Introduction to Libre Office</title>
|
|
|
|
<para>
|
|
<application>Libre Office</application> is a collection of programs for
|
|
creating and editing office documents. It is largely compatible with
|
|
<application>Microsoft Office</application> and
|
|
<application>Open Office</application> on which it is based.
|
|
</para>
|
|
|
|
&lfs71_checked;
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Core Download (HTTP): <ulink url="&libreoffice-core-download-http;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Core Download (FTP): <ulink url="&libreoffice-core-download-ftp;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Core Download MD5 sum: &libreoffice-core-md5sum;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Core Download size: &libreoffice-core-size;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated disk space required: &libreoffice-buildsize;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated build time: &libreoffice-time;
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<bridgehead renderas="sect3">Libre Office Dependencies</bridgehead>
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
|
<para role="required">
|
|
<xref linkend="cups"/>,
|
|
<xref linkend="curl"/> or <xref linkend="wget"/>,
|
|
<xref linkend="gperf"/>,
|
|
<xref linkend="gtk2"/> or <xref linkend="gtk3"/>,
|
|
<application>Perl Modules</application>
|
|
<xref linkend="perl-archive-zip"/> and
|
|
<xref linkend="perl-xml-parser"/>,
|
|
<xref linkend="unzip"/>,
|
|
<xref linkend="which"/> and
|
|
<xref linkend="zip"/>.
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
|
<note>
|
|
<para>
|
|
Most of these packages are recommend because if they're not installed
|
|
the build process will compile and install its own (often older)
|
|
version. If you're using <application>GCC 4.7</application> some of
|
|
those older packages will fail to compile.
|
|
</para>
|
|
</note>
|
|
|
|
<para role="recommended">
|
|
<xref linkend="boost"/>,
|
|
<xref linkend="db"/>,
|
|
<xref linkend="expat"/>,
|
|
<xref linkend="gst-plugins-base"/>,
|
|
<xref linkend="libjpeg"/>,
|
|
<xref linkend="libgsf"/>,
|
|
<xref linkend="libpng"/>,
|
|
<xref linkend="librsvg"/>,
|
|
<xref linkend="libxml2"/> and <xref linkend="libxslt"/>,
|
|
<xref linkend="neon"/>,
|
|
<xref linkend="nss"/>,
|
|
<xref linkend="openssl"/>,
|
|
<xref linkend="poppler"/>,
|
|
<xref linkend="postgresql"/> and
|
|
<xref linkend="redland"/>.
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
|
<para role="optional">
|
|
<ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>,
|
|
<ulink url="http://sourceforge.net/projects/hunspell/files/MyThes/">MyThes</ulink>,
|
|
<ulink url="http://sampleicc.sourceforge.net/">SampleICC</ulink>,
|
|
<ulink url="http://hci.iwr.uni-heidelberg.de/vigra">Vigra</ulink> and
|
|
<xref linkend="zenity"/>.
|
|
</para>
|
|
|
|
<para condition="html" role="usernotes">
|
|
User Notes: <ulink url="&blfs-wiki;/libreoffice"/>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 role="installation">
|
|
<title>Installation of Libre Office</title>
|
|
|
|
<warning>
|
|
<para>
|
|
Untaring the libreoffice-core-&libreoffice-version;.2 tarball as
|
|
<systemitem class="username">root</systemitem> has the curious effect of
|
|
changing the ownership of the <emphasis>parent</emphasis> directory
|
|
to a user with numerical id 11012 and with the permissions set to allow
|
|
read, write and execute for that user only! If you untared as
|
|
<systemitem class="username">root</systemitem> in your home folder you
|
|
could end up unable to log in again :/ If you untared it in
|
|
<filename class="directory">/usr</filename> you would find your user
|
|
account unable to access any file in
|
|
<filename class="directory">/usr</filename>.
|
|
</para>
|
|
|
|
<para>
|
|
You can avoid this unpleasantness by
|
|
<emphasis>not</emphasis> untaring it as
|
|
<systemitem class="username">root</systemitem>. If you must untar it as
|
|
<systemitem class="username">root</systemitem> pass the option
|
|
<option>--no-overwrite-dir</option> to tar. This is the default when you
|
|
untar as a user but has to be passed as an option when untaring as
|
|
<systemitem class="username">root</systemitem>:
|
|
</para>
|
|
</warning>
|
|
|
|
<screen role="root"><userinput>tar -xf libreoffice-core-&libreoffice-version;.2.tar.xz --no-overwrite-dir &&
|
|
cd libreoffice-core-&libreoffice-version;.2</userinput></screen>
|
|
|
|
<para>
|
|
Install <application>Libre Office</application> by running the following
|
|
commands:
|
|
</para>
|
|
|
|
<screen><userinput>./autogen.sh --prefix=/usr \
|
|
--disable-binfilter \
|
|
--disable-gconf \
|
|
--disable-mozilla \
|
|
--disable-odk \
|
|
--with-system-boost \
|
|
--with-system-cairo \
|
|
--with-system-curl \
|
|
--with-system-db \
|
|
--with-system-expat \
|
|
--with-system-hunspell \
|
|
--with-system-icu \
|
|
--with-system-jpeg \
|
|
--with-system-libpng \
|
|
--with-system-libxml \
|
|
--with-system-neon \
|
|
--with-system-nss \
|
|
--with-system-openssl \
|
|
--with-system-poppler \
|
|
--with-system-postgresql \
|
|
--with-system-redland \
|
|
--with-system-zlib \
|
|
--with-lang="pt-BR" \
|
|
--without-java \
|
|
--with-num-cpus=$(getconf _NPROCESSORS_ONLN) &&
|
|
./download &&
|
|
mkdir -p ../libreoffice-downloads &&
|
|
cp src/*.{xz,gz,txt,zip,bz2,tgz,jar,dll,oxt} \
|
|
src/*LICENSE* ../libreoffice-downloads &&
|
|
make</userinput></screen>
|
|
|
|
<para>This package does not come with a test suite.</para>
|
|
|
|
<para>
|
|
Now, as the <systemitem class="username">root</systemitem> user:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>make install &&
|
|
for program in base calc draw impress math writer
|
|
do
|
|
echo "#!/bin/bash
|
|
exec /usr/lib/libreoffice/program/soffice --nologo --${program} \"\${@}\"" \
|
|
> /usr/bin/${program}
|
|
chmod 755 /usr/bin/${program}
|
|
done &&
|
|
ln -s ../lib/libreoffice/program/spadmin /usr/bin/printeradmin &&
|
|
ln -s ../lib/libreoffice/program/unopkg /usr/bin &&
|
|
cp sysui/desktop/man/{libreoffice,unopkg}.1 /usr/share/man/man1 &&
|
|
for res in 16 32 48 128 256
|
|
do
|
|
mkdir -p /usr/share/icons/hicolor/${res}x${res}/{apps,mimetypes}
|
|
cp sysui/desktop/icons/hicolor/${res}x${res}/apps/*.png \
|
|
/usr/share/icons/hicolor/${res}x${res}/apps
|
|
cp sysui/desktop/icons/hicolor/${res}x${res}/mimetypes/*.png \
|
|
/usr/share/icons/hicolor/${res}x${res}/mimetypes
|
|
done &&
|
|
gtk-update-icon-cache /usr/share/icons/hicolor</userinput></screen>
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<para>
|
|
<option>--enable-gtk3</option>: Add this option if you've installed and
|
|
want to use <application>Gtk+-3</application>.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--disable-gstreamer</option>: Add this option if you've not
|
|
installed <xref linkend="gst-plugins-base"/>.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--disable-binfilter</option>: These "binfilters" enable
|
|
<application>Libre Office</application> to open legacy
|
|
<application>Star Office</application> format documents. Compiling
|
|
<application>binfilter</application> requires
|
|
<application>Java</application>.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--disable-gconf</option>: Compiling with support for
|
|
<application>GConf</application> requires the deprecated
|
|
<application>ORBit</application>.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--disable-mozilla</option>: This option stops
|
|
<application>Libre Office</application> trying to compile an old version
|
|
of <application>SeaMonkey</application>.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--disable-odk</option>: This option disables installing the
|
|
office development kit. Remove this option if you want to develop a
|
|
<application>Libre Office</application> based application.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--with-system- ...</option>: These options prevent
|
|
<application>Libre Office</application> trying to compile its own
|
|
versions of these dependencies. If you've not installed
|
|
some of the dependencies, remove the corresponding option.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--with-num-cpus=$(getconf _NPROCESSORS_ONLN)</option>: This option
|
|
tells <application>Libre Office</application> to use all your CPUs to compile
|
|
in parallel and speed up the build.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--with-lang="pt-BR"</option>: This option sets what languages to
|
|
support. en-US is always included by default. For a list of the available
|
|
options: <command>ls translations/source</command>.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--without-java</option>: This option compiles
|
|
<application>Libre Office</application> without
|
|
<application>Java</application> support.
|
|
</para>
|
|
|
|
<para>
|
|
<option>--with-vendor=LFS-BLFS</option>: This option sets LFS-BLFS as the
|
|
vendor which is mentioned when you click About on the toolbar.
|
|
</para>
|
|
|
|
<para>
|
|
<command>./download</command>: The build process runs the
|
|
<command>download</command> script which downloads some 470 MB of
|
|
tarballs. We run the download script to get it out of the way at the
|
|
start so we can make a backup copy of the downloaded files.
|
|
</para>
|
|
|
|
<para>
|
|
<command>mkdir -p ../libreoffice-downloads;
|
|
cp src/*.{xz,gz,txt,zip,bz2,tgz,jar,dll,oxt} src/*LICENSE*
|
|
../libreoffice-downloads</command>: this makes a backup copy
|
|
of the downloaded files so you don't have to download them again if you
|
|
decide to recompile <application>Libre Office</application>. In that case,
|
|
just start with:
|
|
<command>mkdir src; cp ../libreoffice-downloads/* src</command>
|
|
</para>
|
|
|
|
<para>
|
|
<command>for program in base calc draw impress math writer ...</command>:
|
|
These commands create 6 simple shell scripts in
|
|
<filename class="directory">/usr/bin</filename> that can be used to launch
|
|
<application>Libre Office</application> in its various forms. If you like
|
|
seeing the <application>Libre Office</application> splash screen, remove
|
|
the "--nologo" option.
|
|
</para>
|
|
|
|
<para>
|
|
<command>for res in 16 32 48 128 256 ...</command>: These commands copy
|
|
various icons into the hicolor icon theme used by
|
|
<application>Gtk+</application>.
|
|
</para>
|
|
|
|
<para>
|
|
<command>gtk-update-icon-cache /usr/share/icons/hicolor</command>: This
|
|
command rebuilds
|
|
<filename>/usr/share/icons/hicolor/icon-theme.cache</filename> to include
|
|
the new icons.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 role="configuration">
|
|
<title>Configuring Libre Office</title>
|
|
|
|
<para>
|
|
If you use a desktop environment like <application>Gnome</application>
|
|
or <application>KDE</application> and want the programs to show up in the
|
|
panel's menu, as the <systemitem class="username">root</systemitem> user,
|
|
create some simple desktop files:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>for program in base calc draw impress math writer
|
|
do echo "[Desktop Entry]
|
|
Encoding=UTF-8
|
|
Type=Application
|
|
Name=${program^}
|
|
Comment=Libre Office ${program^}
|
|
Icon=${program}
|
|
Exec=${program}
|
|
Categories=Office;Application;
|
|
StartupNotify=true
|
|
Terminal=false" > /usr/share/applications/${program}.desktop
|
|
done &&
|
|
echo "[Desktop Entry]
|
|
Encoding=UTF-8
|
|
Type=Application
|
|
Name=Printer Administration
|
|
Comment=Libre Office Printer Administration
|
|
Icon=printeradmin
|
|
Exec=printeradmin
|
|
Categories=Office;Printing;Application;
|
|
StartupNotify=true
|
|
Terminal=false" > /usr/share/applications/printeradmin.desktop</userinput></screen>
|
|
</sect2>
|
|
|
|
<sect2 role="content">
|
|
<title>Contents</title>
|
|
|
|
<segmentedlist>
|
|
<segtitle>Installed Programs</segtitle>
|
|
<segtitle>Installed Libraries</segtitle>
|
|
<segtitle>Installed Directory</segtitle>
|
|
|
|
<seglistitem>
|
|
<seg>base, calc, draw, impress, math, printeradmin and writer.</seg>
|
|
<seg>
|
|
Hundreds of shared libraries in
|
|
<filename class="directory">/usr/lib/libreoffice</filename>.
|
|
</seg>
|
|
<seg>/usr/lib/libreoffice.</seg>
|
|
</seglistitem>
|
|
</segmentedlist>
|
|
|
|
<variablelist>
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
<?dbfo list-presentation="list"?>
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
<varlistentry id="base">
|
|
<term><command>base</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a database manager.
|
|
</para>
|
|
<indexterm zone="libreoffice base">
|
|
<primary sortas="b-base">base</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="calc">
|
|
<term><command>calc</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a spreadsheet program.
|
|
</para>
|
|
<indexterm zone="libreoffice calc">
|
|
<primary sortas="b-calc">calc</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="draw">
|
|
<term><command>draw</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a vector graphics editor and diagramming tool.
|
|
</para>
|
|
<indexterm zone="libreoffice draw">
|
|
<primary sortas="b-draw">draw</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="impress">
|
|
<term><command>impress</command></term>
|
|
<listitem>
|
|
<para>
|
|
can edit and display powerpoint presentations.
|
|
</para>
|
|
<indexterm zone="libreoffice impress">
|
|
<primary sortas="b-impress">impress</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="math">
|
|
<term><command>math</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a mathematical formula editor.
|
|
</para>
|
|
<indexterm zone="libreoffice math">
|
|
<primary sortas="b-math">math</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="printeradmin">
|
|
<term><command>printeradmin</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a graphical interface to enable you to change your personal
|
|
printing preferences, which are saved in
|
|
<filename>~/.cups/lpoptions</filename>.
|
|
</para>
|
|
<indexterm zone="libreoffice printeradmin">
|
|
<primary sortas="b-printeradmin">printeradmin</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="unopkg">
|
|
<term><command>unopkg</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a tool to manage <application>Libre Office</application>
|
|
extensions from the command line.
|
|
</para>
|
|
<indexterm zone="libreoffice unopkg">
|
|
<primary sortas="b-unopkg">unopkg</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="writer">
|
|
<term><command>writer</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a word processor.
|
|
</para>
|
|
<indexterm zone="libreoffice writer">
|
|
<primary sortas="b-writer">writer</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</sect2>
|
|
</sect1>
|