source: xsoft/office/libreoffice.xml@ 02c77612

lazarus trunk
Last change on this file since 02c77612 was 02c77612, checked in by Douglas R. Reno <renodr@…>, 7 weeks ago

Libreoffice: add an optional dep on abseil-cpp

Also add the switch to use it into the Command Explanations section

  • Property mode set to 100644
File size: 37.7 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY libreoffice-dl "https://download.documentfoundation.org/libreoffice/src/&libreoffice-version;">
8
9 <!ENTITY libreoffice-core-download-http "&libreoffice-dl;/libreoffice-&libreoffice-dlversion;.tar.xz">
10 <!ENTITY libreoffice-core-md5sum "72d05d00734c6921a47c369b8d7ef8cf">
11 <!ENTITY libreoffice-core-size "268 MB">
12
13 <!ENTITY libreoffice-dict-download-http "&libreoffice-dl;/libreoffice-dictionaries-&libreoffice-dlversion;.tar.xz">
14 <!ENTITY libreoffice-dict-md5sum "7091a370829bdcddd30e73b877bbc404">
15 <!ENTITY libreoffice-dict-size "52 MB">
16
17 <!ENTITY libreoffice-help-download-http "&libreoffice-dl;/libreoffice-help-&libreoffice-dlversion;.tar.xz">
18 <!ENTITY libreoffice-help-md5sum "4dc03b31faaa008574e33ef0720ac6e2">
19 <!ENTITY libreoffice-help-size "160 MB">
20
21 <!ENTITY libreoffice-translations-download-http "&libreoffice-dl;/libreoffice-translations-&libreoffice-dlversion;.tar.xz">
22 <!ENTITY libreoffice-translations-md5sum "7093673b5953a410e9c0297a3302fd36">
23 <!ENTITY libreoffice-translations-size "211 MB">
24
25 <!-- full size remeasured for 7.0.0.3 -->
26
27 <!ENTITY libreoffice-buildsize "8 GB including the additional files if downloaded during the build (729 MB installed). Installing the whole set of languages requires more than 25 GB (around 3 GB installed)">
28
29 <!-- Editors: many updates to poppler will break LO using system poppler until
30 somebody is able to provide a patch or sed. In these cases, please mark
31 the dependency as currently broken and move the \-\-with-system-poppler
32 line to a comment. Also please switch poppler between recommended and
33 optional according to whether or not we use the system version. The
34 installed size will be increased by 2 MB if using the shipped poppler, but
35 the variation in build times will be lost in the noise. - ken
36
37 Not a problem with 7.1.7.2 and poppler-21.05.0. - bdubbs
38 A problem with 7.3.1.3 and poppler-21.05.0, Arch had a patch. - bdubbs
39
40 -->
41
42 <!-- for 6.1.2.1 I allowed 2 SBU for downloads, my total was
43 64.76 SBU with fast downloads
44 for 6.1.4.2 I and 7.0.0.3 just used the total time - bdubbs
45
46 For 6.4.0.3 downloading everything including dictionaries,
47 help, translations took less than 2 minutes (1.1 SBU) with
48 a good domestic internet connection. Total time was 60 SBU - ken
49
50 60 SBU not including download of translations, help and dictionary
51 for 6.4.6.2 - pierre
52
53 56 SBU for 7.0.3.1 not including download of translations, help, and
54 dictionaries. -renodr
55
56 For 7.2.5.2, It was 58 SBU including DL time.
57
58 For 7.5.4.2, I increased the parallelism to 8. -bdubbs
59 -->
60 <!ENTITY libreoffice-time "41 SBU with parallelism=8 (will vary due to download time)">
61
62]>
63
64<sect1 id="libreoffice" xreflabel="LibreOffice-&libreoffice-dlversion;">
65 <?dbhtml filename="libreoffice.html"?>
66
67
68 <title>LibreOffice-&libreoffice-version;</title>
69
70 <indexterm zone="libreoffice">
71 <primary sortas="a-LibreOffice">LibreOffice</primary>
72 </indexterm>
73
74 <sect2 role="package">
75 <title>Introduction to LibreOffice</title>
76
77 <para>
78 <application>LibreOffice</application> is a full-featured office suite.
79 It is largely compatible with <application>Microsoft Office</application>
80 and is descended from <application>OpenOffice.org</application>.
81 </para>
82
83 &lfs121_checked;
84
85 <bridgehead renderas="sect3">Package Information</bridgehead>
86 <itemizedlist spacing="compact">
87 <listitem>
88 <para>
89 Core Download: <ulink url="&libreoffice-core-download-http;"/>
90 </para>
91 </listitem>
92 <listitem>
93 <para>
94 Core Download MD5 sum: &libreoffice-core-md5sum;
95 </para>
96 </listitem>
97 <listitem>
98 <para>
99 Core Download size: &libreoffice-core-size;
100 </para>
101 </listitem>
102 <listitem>
103 <para>
104 Estimated disk space required: &libreoffice-buildsize;
105 </para>
106 </listitem>
107 <listitem>
108 <para>
109 Estimated build time: &libreoffice-time;
110 </para>
111 </listitem>
112 </itemizedlist>
113
114 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
115
116 <note>
117 <para>
118 Around 80 smallish tarballs and zip files will be downloaded during the
119 build. The download time will vary with the local internet speed and
120 server load. The download time is about 3 minutes on a fiber connection
121 and probably not much more than 10 minutes on an ADSL connection.
122 If you have not installed one or more of the following dependencies,
123 they will also be downloaded during the build.
124 </para>
125 </note>
126
127 <itemizedlist spacing="compact">
128 <listitem>
129 <para>
130 Dictionaries: <ulink url="&libreoffice-dict-download-http;"/>
131 </para>
132 </listitem>
133
134 <listitem>
135 <para>
136 Dictionaries MD5 sum: &libreoffice-dict-md5sum;
137 </para>
138 </listitem>
139
140 <listitem>
141 <para>
142 Dictionaries size: &libreoffice-dict-size;
143 </para>
144 </listitem>
145
146 <listitem>
147 <para>
148 Help Files: <ulink url="&libreoffice-help-download-http;"/>
149 </para>
150 </listitem>
151
152 <listitem>
153 <para>
154 Help Files MD5 sum: &libreoffice-help-md5sum;
155 </para>
156 </listitem>
157
158 <listitem>
159 <para>
160 Help Files size: &libreoffice-help-size;
161 </para>
162 </listitem>
163
164 <listitem>
165 <para>
166 Translations: <ulink url="&libreoffice-translations-download-http;"/>
167 </para>
168 </listitem>
169
170 <listitem>
171 <para>
172 Translations MD5 sum: &libreoffice-translations-md5sum;
173 </para>
174 </listitem>
175
176 <listitem>
177 <para>
178 Translations size: &libreoffice-translations-size;
179 </para>
180 </listitem>
181
182<!-- keep one commented patch, it's sure to again need one or more in a few months:-->
183
184<!--
185 <listitem>
186 <para>
187 Required patch to fix building with <xref linkend="poppler"/>:
188 <ulink url="&patch-root;/libreoffice-&libreoffice-dlversion;-poppler_22_09_fixes-1.patch"/>
189 </para>
190 </listitem>
191
192 <listitem>
193 <para>
194 Required patch to fix building with libxml2-2.12.x:
195 <ulink url="&patch-root;/libreoffice-&libreoffice-dlversion;-consolidated_fixes-1.patch"/>
196 </para>
197 </listitem>
198-->
199 </itemizedlist>
200 <bridgehead renderas="sect3">LibreOffice Dependencies</bridgehead>
201
202 <bridgehead renderas="sect4">Required</bridgehead>
203 <para role="required">
204 <xref linkend="perl-archive-zip"/>,
205 <xref linkend="unzip"/>,
206 <xref linkend="wget"/>,
207 <xref linkend="which"/>, and
208 <xref linkend="zip"/>
209 </para>
210
211 &build-use-internet;
212
213 <bridgehead renderas="sect4">Recommended</bridgehead>
214 <note>
215 <para>
216 Most of these packages are recommended because if they're not installed,
217 the build process will compile and install its own (often older)
218 version, with the side effect of increasing both build and installed disk
219 space along with increasing build time.
220 </para>
221 </note>
222
223 <para role="recommended">
224 <xref linkend="apache-ant"/>,
225 <xref linkend="boost"/>,
226 <xref linkend="clucene"/>,
227 <xref linkend="cups"/>,
228 <xref linkend="curl"/>,
229 <xref linkend="dbus-glib"/>,
230 <xref linkend="libepoxy"/>,
231 <xref linkend="libjpeg"/>,
232 <xref linkend="llvm"/> (clang is preferred for rendering with skia),
233 <xref linkend="glm"/>,
234 <xref linkend="glu"/>,
235 <xref linkend="gpgme"/>,
236 <xref linkend="graphite2"/>,
237 <xref linkend="gst10-plugins-base"/>,
238 <xref linkend="gtk3"/>,
239 <xref linkend="harfbuzz"/>,
240 <xref linkend="icu"/>,
241 <xref linkend="libatomic_ops"/>,
242 <xref linkend="lcms2"/>,
243 <xref linkend="librsvg"/>,
244 <xref linkend="libtiff"/>,
245 <xref linkend="libwebp"/>,
246 <xref linkend="libxml2"/> and
247 <xref linkend="libxslt"/>,
248 <xref linkend="lxml"/>,
249 <xref linkend="mesa"/>,
250 <xref linkend="nss"/>,
251 <xref linkend="openldap"/> (if connecting to an LDAP server),
252 <xref linkend="poppler"/>,
253 <xref linkend="postgresql"/>,
254 <xref linkend="redland"/>, and
255 <xref linkend="unixodbc"/>
256 </para>
257
258 <bridgehead renderas="sect4">Optional</bridgehead>
259 <para role="optional">
260 <xref linkend="abseil-cpp"/>,
261 <xref linkend="avahi"/>,
262 <xref linkend="bluez"/>,
263 <xref linkend="dconf"/>,
264 <xref linkend="desktop-file-utils"/>,
265 <xref linkend="doxygen"/> (not relevant if using --disable-odk),
266 <xref linkend="evolution-data-server"/>,
267 <xref linkend="gdb"/>,
268 <xref linkend="gnutls"/>,
269 <xref linkend="kf6-frameworks"/>,
270 <xref linkend="libpaper"/>,
271 <xref linkend="mariadb"/> or <ulink url="https://www.mysql.com/">MySQL</ulink>,
272 <xref linkend="mitkrb"/>,
273 <xref linkend="nasm"/>,
274 &qt5-deps;,
275 <xref linkend="qt6"/>,
276 <xref linkend="sane"/>,
277 <xref linkend="telepathy-glib"/>,
278 <xref linkend="valgrind"/>,
279 <xref linkend="vlc"/>,
280 <ulink url="https://commons.apache.org/proper/commons-codec/">Apache Commons Codec</ulink>,
281 <ulink url="https://hc.apache.org/httpcomponents-client-ga/index.html">Apache Commons HttpClient</ulink>,
282 <ulink url="https://commons.apache.org/proper/commons-lang/">Apache Commons Lang</ulink>,
283 <ulink url="https://commons.apache.org/proper/commons-logging/">Apache Commons Logging</ulink>,
284 <ulink url="https://beanshell.github.io/">BeanShell</ulink>,
285 <ulink url="https://box2d.org/documentation/">box2d</ulink>,
286 <ulink url="https://projects.coin-or.org/CoinMP/">CoinMP</ulink>,
287 <ulink url='https://freedesktop.org/wiki/Software/cppunit/'>Cppunit</ulink>,
288 <ulink url="https://www.firebirdsql.org/">Firebird</ulink>,
289 <ulink url="https://github.com/behdad/glyphy">glyphy</ulink>,
290 <ulink url="&gnome-download-http;/gnome-vfs/">Gnome VFS</ulink>,
291 <ulink url="https://github.com/hamcrest/JavaHamcrest/releases">hamcrest</ulink>,
292 <ulink url="https://hunspell.github.io/">Hunspell</ulink>,
293 <ulink url="https://sourceforge.net/projects/hunspell/files/Hyphen/">Hyphen</ulink>,
294 <ulink url="https://include-what-you-use.org/">iwyu</ulink>,
295 <ulink url="https://github.com/junit-team/junit4/releases">junit4</ulink>,
296 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libabw">libabw</ulink>,
297 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libcdr">libcdr</ulink>,
298 <ulink url="https://sourceforge.net/projects/libcmis/">libcmis</ulink>,
299 <ulink url="https://www.sourceforge.net/projects/libebook/">libebook</ulink>,
300 <ulink url="https://sourceforge.net/projects/libepubgen/">libepubgen</ulink>,
301 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libetonyek">libetonyek</ulink>,
302 <ulink url="https://wiki.documentfoundation.org/Libexttextcat">libexttextcat</ulink>,
303 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libfreehand">libfreehand</ulink>,
304 <ulink url="https://tagoh.github.io/liblangtag/">liblangtag</ulink>,
305 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libmspub">libmspub</ulink>,
306 <ulink url="https://sourceforge.net/projects/libmwaw/">libmwaw</ulink>,
307 <ulink url="https://github.com/Numbertext/libnumbertext">libnumbertext</ulink>,
308 <ulink url="https://sourceforge.net/projects/libwpd/files/libodfgen/">libodfgen</ulink>,
309 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libpagemaker">libpagemaker</ulink>,
310 <ulink url="https://github.com/nayuki/QR-Code-generator">libqrcodegen</ulink>,
311 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libqxp">libqxp</ulink>,
312 <ulink url="https://sourceforge.net/projects/libwpd/files/librevenge/">librevenge (WordPerfect Document importer)</ulink>,
313 <ulink url="https://github.com/fosnola/libstaroffice/wiki">libstaroffice</ulink>,
314 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libvisio">libvisio</ulink>,
315 <ulink url="https://libwpd.sourceforge.net/">libwpd</ulink>,
316 <ulink url="https://libwpg.sourceforge.net/">libwpg</ulink>,
317 <ulink url="https://sourceforge.net/p/libwps/wiki/Home/">libwps</ulink>,
318 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libzmf">libzmf</ulink>,
319 <ulink url="https://lpsolve.sourceforge.net/">lp_solve</ulink>,
320 <ulink url="https://gitlab.com/mdds/mdds">mdds</ulink>,
321 <ulink url="https://sourceforge.net/projects/hunspell/files/MyThes/">MyThes</ulink>,
322 <ulink url="https://odftoolkit.org/conformance/ODFValidator.html">odfvalidator</ulink>,
323 <ulink url="https://code.google.com/archive/p/officeotron/">officeotron</ulink>,
324 <ulink url="https://github.com/KhronosGroup/OpenCOLLADA/">OpenCOLLADA</ulink>,
325 <ulink url="https://gitlab.com/orcus/orcus">Orcus</ulink>,
326 <ulink url="https://sourceware.org/systemtap/">SystemTap</ulink>, and
327 <ulink url="https://ukoethe.github.io/vigra/">VIGRA</ulink>
328 </para>
329
330 <para>
331 There are many optional dependencies not listed here. They can be
332 found in the <filename>download.lst</filename> file in the sources
333 directory.
334 </para>
335
336 <para condition="html" role="usernotes">
337 Editor Notes: <ulink url="&blfs-wiki;/libreoffice"/>
338 </para>
339 </sect2>
340
341 <sect2 role="installation">
342 <title>Installation of LibreOffice</title>
343 <!-- since there is no "." in the "tar -t" listing, I cannot see
344 how no-overwrite-dir would be needed...
345 <important>
346 <para>
347 Unlike the other packages, we assume that you have not yet unpacked the
348 package. This is because the <option>- -no-overwrite-dir</option>
349 switch is needed in case you unpack as the <systemitem
350 class="username">root</systemitem> user.
351 </para>
352 </important>
353
354<screen role="nodump"><userinput>tar -xf libreoffice-&libreoffice-dlversion;.tar.xz - -no-overwrite-dir &amp;&amp;
355cd libreoffice-&libreoffice-dlversion;</userinput></screen>
356-->
357
358<!-- keep a commented instruction if no patches are currently required -->
359<!--
360 <para>
361 First, fix build failures introduced by the latest poppler version:
362 </para>
363
364<screen><userinput>patch -Np1 -i ../libreoffice-&libreoffice-dlversion;-poppler_22_09_fixes-1.patch</userinput></screen>
365-->
366
367 <para>
368 First, fix a bug with linking to zlib:
369 </para>
370
371<screen><userinput remap="pre">sed -i '/icuuc \\/a zlib\\' writerperfect/Library_wpftdraw.mk</userinput></screen>
372
373 <para>
374 Next, fix a build failure with ICU-74+:
375 </para>
376
377<screen><userinput>sed -e /LBCM/d -i i18npool/source/breakiterator/data/line.txt</userinput></screen>
378
379 <para>
380 If you have downloaded the dictionaries, help and translations tarballs,
381 create symlinks to them from the source directory so they won't get
382 downloaded again:
383 </para>
384
385<screen><userinput>install -dm755 external/tarballs &amp;&amp;
386ln -sv ../../../libreoffice-dictionaries-&libreoffice-dlversion;.tar.xz external/tarballs/ &amp;&amp;
387ln -sv ../../../libreoffice-help-&libreoffice-dlversion;.tar.xz external/tarballs/ &amp;&amp;
388ln -sv ../../../libreoffice-translations-&libreoffice-dlversion;.tar.xz external/tarballs/</userinput></screen>
389
390 <para>
391 The instructions in the package unpack some tarballs into a location
392 it cannot find later. Create some symlinks to help the build system out:
393 </para>
394
395<screen><userinput>ln -sv src/libreoffice-help-&libreoffice-dlversion;/helpcontent2/ &amp;&amp;
396ln -sv src/libreoffice-dictionaries-&libreoffice-dlversion;/dictionaries/ &amp;&amp;
397ln -sv src/libreoffice-translations-&libreoffice-dlversion;/translations/</userinput></screen>
398
399 <note>
400 <para>
401 During the build process, some packages will be downloaded (including
402 the ones listed as recommended and optional dependencies) if they are
403 not present on the system. Because of this, build time may vary from the
404 published time more than usual.
405 </para>
406 </note>
407
408 <para>
409 Due to the large size of the package, you may prefer to install it in
410 <filename class="directory">/opt</filename>, instead of
411 <filename class="directory">/usr</filename>. Depending on your choice,
412 replace <replaceable>&lt;PREFIX&gt;</replaceable> by
413 <filename class="directory">/usr</filename> or by
414 <filename class="directory">/opt/libreoffice-&libreoffice-dlversion;</filename>:
415 </para>
416
417<screen><userinput>export LO_PREFIX=<replaceable>&lt;PREFIX&gt;</replaceable></userinput></screen>
418
419 <para>
420 Locales "fr" and "en-GB", you will find below, are just examples; you
421 should change them to suit your needs - you might want to read the
422 "Command Explanations", further below, before proceeding.
423 </para>
424
425 <note>
426 <para>
427 If you set the ACLOCAL environment variable to support installing
428 Xorg in /opt, you will need to unset it for this package.
429 </para>
430 </note>
431
432 <para>
433 If you are building on a 32 bit machine, <envar>CFLAGS</envar> is set to
434 <command>-Os</command>, which breaks the build. Prevent this
435 by issuing:
436 </para>
437
438<screen><userinput>case $(uname -m) in
439 i?86) sed /-Os/d -i solenv/gbuild/platform/LINUX_INTEL_GCC.mk ;;
440esac</userinput></screen>
441
442 <para>
443 Prepare <application>LibreOffice</application> for compilation by running
444 the following commands:
445 </para>
446
447 <!--Editors: if it happens you need to remove some "with-system-xxx"
448 instruction because libreoffice temporarily cannot use the current
449 system version, please keep it around commented out, so that it can be
450 remembered to test it with higher versions of libreoffice. -->
451
452<screen><userinput>sed -e "/gzip -f/d" \
453 -e "s|.1.gz|.1|g" \
454 -i bin/distro-install-desktop-integration &amp;&amp;
455
456sed -e "/distro-install-file-lists/d" -i Makefile.in &amp;&amp;
457
458./autogen.sh --prefix=$LO_PREFIX \
459 --sysconfdir=/etc \
460 --with-vendor=BLFS \
461 --with-lang='fr en-GB' \
462 --with-help \
463 --with-myspell-dicts \
464 --without-junit \
465 --without-system-dicts \
466 --disable-dconf \
467 --disable-odk \
468 --enable-release-build=yes \
469 --enable-python=system \
470 --with-jdk-home=/opt/jdk \
471 --with-system-boost \
472 --with-system-clucene \
473 --with-system-curl \
474 --with-system-epoxy \
475 --with-system-expat \
476 --with-system-glm \
477 --with-system-gpgmepp \
478 --with-system-graphite \
479 --with-system-harfbuzz \
480 --with-system-icu \
481 --with-system-jpeg \
482 --with-system-lcms2 \
483 --with-system-libatomic_ops \
484 --with-system-libpng \
485 --with-system-libxml \
486 --with-system-nss \
487 --with-system-odbc \
488 --with-system-openldap \
489 --with-system-openssl \
490 --with-system-poppler \
491 --with-system-postgresql \
492 --with-system-redland \
493 --with-system-libtiff \
494 --with-system-libwebp \
495 --with-system-zlib</userinput></screen>
496
497<!-- this one might be to be removed with one of the next
498 releases of LO (after 24.2.1.2) as it seems the issue
499 is known by upstream:
500 https://www.mail-archive.com/libreoffice@lists.freedesktop.org/msg336884.html
501-->
502 <para>
503 Fix a misconfiguration when installing on 32-bit machines:
504 </para>
505<screen><userinput>if [ "$(uname -m)" == "i686" ]; then
506 sed -e "s/LFS_CFLAGS=$/&amp;-D_FILE_OFFSET_BITS=64/" -i config_host.mk
507fi</userinput></screen>
508
509<!--
510 <para>
511 The instructions below will only build the package without running
512 any unit tests. If you prefer to run the unit tests, replace
513 <command>make build-nocheck</command> with <command>make build</command>
514 or (as a regular user only) just <command>make</command>, but do not be
515 surprised if a unit test fails right at the end of the build and
516 breaks it.
517 </para>
518-->
519 <para>
520 Build the package:
521 </para>
522
523<screen><userinput>make build</userinput></screen>
524
525 <para>
526 Now, as the <systemitem class="username">root</systemitem> user:
527 </para>
528
529<screen role="root"><userinput>make distro-pack-install</userinput></screen>
530
531 <para>
532 If installed in <filename
533 class="directory">/opt/libreoffice-&libreoffice-dlversion;</filename>
534 some additional steps are necessary. Issue the following commands as the
535 <systemitem class="username">root</systemitem> user:
536 </para>
537
538<screen role="root"><userinput>if [ "$LO_PREFIX" != "/usr" ]; then
539
540 # This symlink is necessary for the desktop menu entries
541 ln -svf $LO_PREFIX/lib/libreoffice/program/soffice /usr/bin/libreoffice &amp;&amp;
542
543 # Set up a generic location independent of version number
544 ln -sfv $LO_PREFIX /opt/libreoffice
545
546 # Icons
547 mkdir -vp /usr/share/pixmaps
548 for i in $LO_PREFIX/share/icons/hicolor/32x32/apps/*; do
549 ln -svf $i /usr/share/pixmaps
550 done &amp;&amp;
551
552 # Desktop menu entries
553 for i in $LO_PREFIX/lib/libreoffice/share/xdg/*; do
554 ln -svf $i /usr/share/applications/libreoffice-$(basename $i)
555 done &amp;&amp;
556
557 # Man pages
558 for i in $LO_PREFIX/share/man/man1/*; do
559 ln -svf $i /usr/share/man/man1/
560 done
561
562 unset i
563fi</userinput></screen>
564
565 <para>
566 If you have installed <xref linkend="desktop-file-utils"/>, and you wish
567 to update the MIME database, issue, as the <systemitem class="username">
568 root</systemitem> user:
569 </para>
570
571<screen role="root"><userinput>update-desktop-database</userinput></screen>
572
573 <para>
574 The suite and main modules can be started from the menu. From a terminal,
575 the suite can be started with the <command>libreoffice</command> command
576 and the modules with the <command>libreoffice
577 --<replaceable>&lt;module&gt;</replaceable></command> command,
578 respectively, where <replaceable>&lt;module&gt;</replaceable> is one of
579 base, calc, draw, impress, math, web, or writer. Modules cannot be started
580 using their shell starting script names (see "Installed Programs", below),
581 if LO_PREFIX is other than <filename class='directory'>/usr</filename>,
582 unless the <filename class='directory'>$LO_PREFIX/bin</filename> directory
583 is appended to the PATH.
584 </para>
585
586 </sect2>
587
588 <sect2 role="commands">
589 <title>Command Explanations</title>
590
591 <para>
592 <command>sed -e ...</command>: The first sed prevents compression of the
593 manual pages and the second one prevents the install from failing.
594 </para>
595
596 <para>
597 <parameter>--with-vendor=BLFS</parameter>: This switch sets BLFS as
598 the vendor which is mentioned when you click "About" from the Help menu
599 on the toolbar.
600 </para>
601
602 <para>
603 <parameter>--with-lang='fr en-GB'</parameter>: This switch sets
604 what languages to support. To list several languages, separate them with
605 a space. For all languages, use
606 <option>--with-lang=ALL</option>. Note that the translations file
607 is not needed and won't be downloaded if using only en-US as a language.
608 </para>
609
610 <note>
611 <para>
612 For a list of the available languages, look in
613 <filename>solenv/inc/langlist.mk</filename>.
614 </para>
615 </note>
616
617 <para>
618 <parameter>--with-help</parameter>: Without this switch, the help files
619 are not built.
620 </para>
621
622 <para>
623 <parameter>--with-jdk-home=/opt/jdk</parameter>: This parameter will silence
624 a warning that the configure script attempted to find JAVA_HOME
625 automatically (even though that is passed in the environment). Omit this if
626 you disabled java.
627 </para>
628
629 <para>
630 <parameter>--with-myspell-dicts</parameter>: This switch adds myspell
631 dictionaries to the <application>LibreOffice</application> installation
632 set.
633 </para>
634
635 <para>
636 <parameter>--with-system-boost</parameter>: This switch enables using
637 system boost. From time to time, recent versions of boost break
638 the build of libreoffice. In this case, it is possible to use the
639 bundled copy of boost by removing this flag.
640 </para>
641
642 <para>
643 <parameter>--disable-dconf</parameter>: This switch disables compiling
644 <application>LibreOffice</application> with the
645 <application>GNOME DConf</application> configuration system support.
646 </para>
647
648 <para>
649 <parameter>--without-junit</parameter>: This switch disables the tests
650 for the deprecated HSQLDB driver which is written in Java.
651 <!-- If you wish
652 to build this driver replace this switch with the set of switches
653 described below after '- -without-java'.-->
654 </para>
655
656 <para>
657 <parameter>--without-system-dicts</parameter>: This switch disables the
658 use of dictionaries from system paths so that the ones installed by this
659 package are used.
660 </para>
661
662 <para>
663 <parameter>--disable-odk</parameter>: This switch disables installing the
664 office development kit. Remove if you want to develop a
665 <application>LibreOffice</application> based application.
666 </para>
667
668 <para>
669 <parameter>--enable-release-build=yes</parameter>: This switch enables a
670 Release Build. <application>LibreOffice</application> can be built as a
671 Release Build or as a Developer Build, because their default installation
672 paths and user profile paths are different. Developer Build displays the
673 words "Dev" and "Beta" in several places (e.g, menu and splash screen).
674 </para>
675
676 <para>
677 <parameter>--enable-python=system</parameter>: This switch tells
678 <application>LibreOffice</application> to use the system installed
679 <application>Python 3</application> instead of
680 the bundled one.
681 </para>
682
683 <para>
684 <parameter>--with-system-*</parameter>: These switches prevent
685 <application>LibreOffice</application> from trying to compile its own
686 versions of these dependencies. If you've not installed some of the
687 dependencies, remove the corresponding switches.
688 </para>
689
690<!--
691 <para>
692 <command>CPPFLAGS='-DU_USING_ICU_NAMESPACE=1' make ...</command>: <xref
693 linkend="icu"/> has removed an implicit namespace <quote>using</quote>
694 from its headers files. Setting <envar>U_USING_ICU_NAMESPACE</envar> to
695 1 allows to restore the former behavior, which is required for building
696 <application>libreoffice</application>.
697 </para>
698-->
699 <para>
700 <command>make distro-pack-install</command>: This does a normal
701 install, but if you add a DESTDIR environment variable it will also
702 install a lot of (text) gid_Module_* files in the DESTDIR, to help
703 distributions which want to break the package into parts.
704 </para>
705
706 <para>
707 <option>--with-parallelism=&lt;count&gt;</option>: This switch
708 tells <application>LibreOffice</application> to use &lt;count&gt; CPU
709 cores to compile in parallel. (Do not include literal angle brackets.)
710 The default is to use all available cores on the system.
711 </para>
712
713 <para>
714 <option>--disable-cups</option>: Use this switch if you don't need
715 printing support.
716 </para>
717
718 <para>
719 <option>--disable-dbus</option>: Use this switch if you've not installed
720 D-Bus-1.8.0 or later. It also disables Bluetooth support and font install
721 via PackageKit.
722 </para>
723
724 <para>
725 <option>--disable-firebird-sdbc</option>: By default, the ability to
726 connect to a <application>firebird</application> database is enabled.
727 Add this switch if you do not need that feature.
728 </para>
729
730 <para>
731 <option>--disable-gstreamer-1-0</option>: Use this switch if you have not
732 installed <xref linkend="gst10-plugins-base"/>.
733 </para>
734
735 <para>
736 <option>--disable-postgresql-sdbc</option>: This switch disables compiling
737 <application>LibreOffice</application> with the ability to connect to a
738 <application>PostgreSQL</application> database. Use it if you have not
739 installed <application>PostgreSQL</application> and you do not want
740 <application>LibreOffice</application> to compile its bundled copy.
741 </para>
742
743 <para>
744 <option>--disable-skia</option>: Use <xref linkend="cairo"/> for rendering
745 instead of skia.
746 </para>
747
748 <para>
749 <option>--enable-gtk3-kde5</option>: This switch allows the Visual Class
750 Library, which is responsible for widgets, to be built with KF5 file
751 dialogs if GTK+-3, Qt5 and Plasma are all available.
752 </para>
753
754 <para>
755 <option>--enable-lto</option>: This switch will enable Link Time
756 Optimization, which results in slightly smaller libraries (about 40 MB).
757 This is said to make <application>LibreOffice</application> programs
758 load faster (and possibly run faster, e.g. when recalculating a
759 spreadsheet). On an 8-core machine with 16GB of memory, the difference
760 in compile times was minimal, but an extra 2GB was used for the work
761 files. On machines with fewer processors or a lack of memory, the compile
762 might be much slower.
763 </para>
764
765 <para>
766 <option>--without-java</option>: This switch disables
767 <application>Java</application> support in
768 <application>LibreOffice</application>. Java is needed for the
769 deprecated HSQLDB driver, which allows reading databases created by
770 other programs or in earlier versions of libreoffice
771 <application>base</application>. It is also needed for some optional
772 user interface components.
773 </para>
774
775 <para>
776 <option>--without-fonts</option>: <application>LibreOffice</application>
777 includes a number of third-party TrueType fonts. If you have already
778 installed some or all of the same fonts, you may prefer to use the system
779 versions.
780 </para>
781
782 <para>
783 <!-- Brings in - -enable-qt5 as well. -->
784 <option>--enable-kf5</option>: Builds with KDE/Plasma integration. If
785 &qt5-deps; and/or <xref linkend="kf6-frameworks"/> are not
786 installed in <filename class="directory">/usr</filename>, the include
787 and library directories must be specified in <envar>QT5INC</envar>,
788 <envar>QT5LIB</envar>, <envar>KF5INC</envar>, and <envar>KF5LIB</envar>,
789 respectively.
790 </para>
791
792 <para>
793 <option>--enable-evolution2</option>: Enables support for Evolution
794 address books through Evolution Data Server. Note that Evolution Data
795 Server must be installed for this feature to function.
796 </para>
797
798 <para>
799 <option>--enable-qt5</option>: This switch enables support for integration
800 with Qt5 and the Qt5 theming engine. If &qt5-deps; is not installed in
801 <filename class="directory">/usr</filename>, the include and library
802 directories must be specified in the <envar>QT5INC</envar> and
803 <envar>QT5LIB</envar> environment variables.
804 </para>
805
806 <para>
807 <option>--enable-qt6</option>: This switch enables support for integration
808 with Qt6 and the Qt6 theming engine. If <xref linkend="qt6"/> is not
809 installed in <filename class="directory">/usr</filename>, the include and
810 library directories must be specified in the <envar>QT6INC</envar> and
811 <envar>QT6LIB</envar> environment variables.
812 </para>
813
814 <para>
815 <option>--with-system-abseil</option>: This switch enables using a system
816 version of the Abseil C++ libraries instead of the bundled copy. Add this
817 switch if <xref linkend="abseil-cpp"/> is installed and you wish to use
818 it instead of the bundled copy.
819 </para>
820
821 <!-- For when we add KDE 6 to the book next cycle.
822 <para>
823 <!- - Brings in - -enable-qt5 as well. - ->
824 <option>- -enable-kf6</option>: Builds with KDE/Plasma integration. If
825 <xref linkend="qt6"/> and/or <xref linkend="kf6-frameworks"/> are not
826 installed in <filename class="directory">/usr</filename>, the include
827 and library directories must be specified in <envar>QT6INC</envar>,
828 <envar>QT6LIB</envar>, <envar>KF6INC</envar>, and <envar>KF6LIB</envar>,
829 respectively.
830 </para>
831 -->
832
833 <!--
834 <para>
835 Currently broken by ICU68 (TRUE and FALSE need to be true and false) on
836 libe-book and perhaps elsewhere - commented explanation retained. ken
837 <option>- -with-system-icu</option>: This command would use the system
838 version of <xref linkend="icu"/> which is normally considered to be a good
839 thing to do. However, one of the very minor packages pulled in by
840 <application>LibreOffice</application>, libfreehand-0.1.2, does not compile
841 with ICU-65.1 because of a missing semi-colon at the end of one line in one
842 of its files. Do not use this option unless you have separately installed a
843 patched or newer version of
844 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libfreehand">libfreehand</ulink>.
845 </para>
846 -->
847
848 </sect2>
849
850 <sect2 role="content">
851 <title>Contents</title>
852
853 <segmentedlist>
854 <segtitle>Installed Programs</segtitle>
855 <segtitle>Installed Libraries</segtitle>
856 <segtitle>Installed Directory</segtitle>
857
858 <seglistitem>
859 <seg>
860 libreoffice, lobase, localc, lodraw, loffice, lofromtemplate,
861 loimpress, lomath, loweb, lowriter, soffice and unopkg;
862 several programs under
863 $LO_PREFIX/lib/libreoffice/program
864 </seg>
865 <seg>
866 several libraries under
867 $LO_PREFIX/lib/libreoffice/program
868 </seg>
869 <seg>
870 $LO_PREFIX/lib/libreoffice
871 </seg>
872 </seglistitem>
873 </segmentedlist>
874
875 <variablelist>
876 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
877 <?dbfo list-presentation="list"?>
878 <?dbhtml list-presentation="table"?>
879
880 <varlistentry id="libreoffice-suite">
881 <term><command>libreoffice (or soffice)</command></term>
882 <listitem>
883 <para>
884 is the main libreofice suite (symlink to
885 $LO_PREFIX/lib/libreoffice/program/soffice)
886 </para>
887 <indexterm zone="libreoffice libreoffice-suite">
888 <primary sortas="b-libreoffice-suite">libreoffice-suite</primary>
889 </indexterm>
890 </listitem>
891 </varlistentry>
892
893 <varlistentry id="lobase">
894 <term><command>lobase</command></term>
895 <listitem>
896 <para>
897 is the database manager module shell starting script
898 </para>
899 <indexterm zone="libreoffice lobase">
900 <primary sortas="b-lobase">lobase</primary>
901 </indexterm>
902 </listitem>
903 </varlistentry>
904
905 <varlistentry id="localc">
906 <term><command>localc</command></term>
907 <listitem>
908 <para>
909 is the spreadsheet module shell starting script
910 </para>
911 <indexterm zone="libreoffice localc">
912 <primary sortas="b-localc">localc</primary>
913 </indexterm>
914 </listitem>
915 </varlistentry>
916
917 <varlistentry id="lodraw">
918 <term><command>lodraw</command></term>
919 <listitem>
920 <para>
921 is the vector graphics editor and diagramming tool module shell
922 starting script
923 </para>
924 <indexterm zone="libreoffice lodraw">
925 <primary sortas="b-lodraw">lodraw</primary>
926 </indexterm>
927 </listitem>
928 </varlistentry>
929
930 <varlistentry id="loimpress">
931 <term><command>loimpress</command></term>
932 <listitem>
933 <para>
934 is the (PowerPoint) presentations editor and displayer
935 module shell starting script
936 </para>
937 <indexterm zone="libreoffice loimpress">
938 <primary sortas="b-loimpress">loimpress</primary>
939 </indexterm>
940 </listitem>
941 </varlistentry>
942
943 <varlistentry id="lomath">
944 <term><command>lomath</command></term>
945 <listitem>
946 <para>
947 is the mathematical formula editor module shell starting script
948 </para>
949 <indexterm zone="libreoffice lomath">
950 <primary sortas="b-lomath">lomath</primary>
951 </indexterm>
952 </listitem>
953 </varlistentry>
954
955 <varlistentry id="loweb">
956 <term><command>loweb</command></term>
957 <listitem>
958 <para>
959 is the HTML editor module shell starting script
960 </para>
961 <indexterm zone="libreoffice loweb">
962 <primary sortas="b-loweb">loweb</primary>
963 </indexterm>
964 </listitem>
965 </varlistentry>
966
967 <varlistentry id="lowriter">
968 <term><command>lowriter</command></term>
969 <listitem>
970 <para>
971 is the word processor module shell starting script
972 </para>
973 <indexterm zone="libreoffice lowriter">
974 <primary sortas="b-lowriter">lowriter</primary>
975 </indexterm>
976 </listitem>
977 </varlistentry>
978
979 <varlistentry id="unopkg">
980 <term><command>unopkg</command></term>
981 <listitem>
982 <para>
983 is a tool to manage <application>LibreOffice</application>
984 extensions from the command line
985 </para>
986 <indexterm zone="libreoffice unopkg">
987 <primary sortas="b-unopkg">unopkg</primary>
988 </indexterm>
989 </listitem>
990 </varlistentry>
991
992 </variablelist>
993
994 </sect2>
995
996</sect1>
Note: See TracBrowser for help on using the repository browser.