source: xsoft/graphweb/seamonkey.xml@ e77adf7

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 9.0 9.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since e77adf7 was 909e238, checked in by Pierre Labastie <pieere@…>, 5 years ago

Seamonkey is hit by the -Werror=format false positives, but the other flags
are not needed anymore

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@21607 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 16.4 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
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 seamonkey-download-http "&mozilla-http;/seamonkey/releases/&seamonkey-version;/source/seamonkey-&seamonkey-version;.source.tar.xz">
8 <!ENTITY seamonkey-download-ftp " ">
9 <!ENTITY seamonkey-md5sum "5868179112ff4b2562f0ca22f4091bf0">
10 <!ENTITY seamonkey-size "221 MB">
11 <!ENTITY seamonkey-buildsize "5.3 GB (113 MB installed)">
12 <!ENTITY seamonkey-time "16 SBU (using parallelism=4)">
13]>
14
15<sect1 id="seamonkey" xreflabel="SeaMonkey-&seamonkey-version;">
16 <?dbhtml filename="seamonkey.html" ?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>SeaMonkey-&seamonkey-version;</title>
24
25 <indexterm zone="seamonkey">
26 <primary sortas="a-SeaMonkey">SeaMonkey</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to SeaMonkey</title>
31
32 <para>
33 <application>SeaMonkey</application> is a browser suite, the Open Source
34 sibling of <application>Netscape</application>. It includes the browser,
35 composer, mail and news clients, and an IRC client. It is the follow-on
36 to the Mozilla browser suite.
37 </para>
38
39 <para>
40 The Mozilla project also hosts two subprojects that aim to satisfy the
41 needs of users who don't need the complete browser suite or prefer to have
42 separate applications for browsing and e-mail. These subprojects are
43 <xref linkend="firefox"/> and <xref linkend="thunderbird"/>. Both are
44 based on the <application>Mozilla</application> source code.
45 </para>
46
47 &lfs84_checked;
48
49 <bridgehead renderas="sect3">Package Information</bridgehead>
50 <itemizedlist spacing="compact">
51 <listitem>
52 <para>
53 Download (HTTP): <ulink url="&seamonkey-download-http;"/>
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download (FTP): <ulink url="&seamonkey-download-ftp;"/>
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Download MD5 sum: &seamonkey-md5sum;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Download size: &seamonkey-size;
69 </para>
70 </listitem>
71 <listitem>
72 <para>
73 Estimated disk space required: &seamonkey-buildsize;
74 </para>
75 </listitem>
76 <listitem>
77 <para>
78 Estimated build time: &seamonkey-time;
79 </para>
80 </listitem>
81 </itemizedlist>
82<!--
83 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
84 <itemizedlist spacing="compact">
85 <listitem>
86 <para>
87 Required patch if using gcc-6 or later
88 <ulink url="&patch-root;/seamonkey-&seamonkey-version;-gcc6-1.patch"/>
89 </para>
90 </listitem>
91 </itemizedlist>
92-->
93 <note>
94 <para>
95 The tarball
96 <emphasis>seamonkey-&seamonkey-version;.source.tar.xz</emphasis> will
97 untar to <emphasis>seamonkey-&seamonkey-version;</emphasis> directory.
98 </para>
99 </note>
100
101 <bridgehead renderas="sect3">SeaMonkey Dependencies</bridgehead>
102
103 <bridgehead renderas="sect4">Required</bridgehead>
104 <para role="required">
105 <xref linkend="autoconf213"/>,
106 both <xref linkend="gtk2"/> and <xref linkend="gtk3"/>,
107 <xref linkend="unzip"/>,
108 <xref linkend="yasm"/>, and
109 <xref linkend="zip"/>
110 </para>
111
112 <bridgehead renderas="sect4">Recommended</bridgehead>
113 <para role="recommended">
114 <xref linkend="icu"/>,
115 <xref linkend="libevent"/>,
116 <xref linkend="libvpx"/>,
117 <xref linkend="nspr"/>,
118 <xref linkend="nss"/>,
119 <xref linkend="pulseaudio"/>, and
120 <xref linkend="sqlite"/>
121 </para>
122<!--
123 <bridgehead renderas="sect4">Optional</bridgehead>
124 <para role="optional">
125 <xref linkend="sqlite"/> (not recommended due to potential
126 security concerns)
127 </para>
128-->
129 <note>
130 <para>
131 If you don't install recommended dependencies, then internal copies of
132 those packages will be used. They might be tested to work, but they can
133 be out of date or contain security holes.
134 </para>
135 </note>
136<!--
137 <note>
138 <para>
139 You must have installed <application>Openssl</application> before
140 <application>Python 2</application> or the build system will quickly
141 fail with output including "ImportError: cannot import name
142 HTTPSHandler". If you are in any doubt about this (e.g. upgrading from
143 an older version of Seamonkey), check if
144 <filename>/usr/lib/python&python2-majorver;/lib-dynload/_ssl.so</filename>
145 exists. If it does not, reinstall <xref linkend="python2"/> (after
146 installing <xref linkend="openssl"/>. The latest version of any
147 <emphasis>currently maintained</emphasis> version of Openssl should be
148 satisfactory if already installed.
149 </para>
150 </note>
151-->
152 <bridgehead renderas="sect4">Optional</bridgehead>
153 <para role="optional">
154 <xref linkend="alsa-lib"/>,
155 <xref linkend="curl"/>,
156 <xref linkend="dbus-glib"/>,
157 <xref linkend="doxygen"/>,
158 <xref linkend="GConf"/>,
159 <xref linkend="gst10-plugins-base"/> (and other plugins, only for tests),
160 <xref linkend="openjdk"/>,
161 <xref linkend="startup-notification"/>,
162 <xref linkend="valgrind"/>,
163 <xref linkend="wget"/>,
164 <xref linkend="wireless_tools"/>, and
165 <ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>
166 </para>
167
168 <para condition="html" role="usernotes">
169 User Notes: <ulink url="&blfs-wiki;/seamonkey"/>
170 </para>
171
172 </sect2>
173
174 <sect2 role="installation">
175 <title>Installation of SeaMonkey</title>
176
177 <para>
178 The configuration of <application>SeaMonkey</application> is accomplished
179 by creating a <filename>mozconfig</filename> file containing the desired
180 configuration options. A default <filename>mozconfig</filename> file is
181 created below. To see the entire list of available configuration options
182 (and an abbreviated description of each one), issue
183 <command>./configure --help</command>. You may also wish to review the
184 entire file and uncomment any other desired options. Create the file by
185 issuing the following command:
186 </para>
187
188<screen><?dbfo keep-together="auto"?><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
189<literal># If you have a multicore machine, all cores will be used by default.
190# If desired, you can reduce the number of cores used, e.g. to 1, by
191# uncommenting the next line and setting a valid number of CPU cores.
192#mk_add_options MOZ_MAKE_FLAGS="-j1"
193
194# If you have installed DBus-Glib comment out this line:
195ac_add_options --disable-dbus
196
197# If you have installed dbus-glib, and you have installed (or will install)
198# wireless-tools, and you wish to use geolocation web services, comment out
199# this line
200ac_add_options --disable-necko-wifi
201
202# Uncomment these lines if you have installed optional dependencies:
203#ac_add_options --enable-system-hunspell
204#ac_add_options --enable-startup-notification
205
206# Uncomment the following option if you have not installed PulseAudio
207#ac_add_options --disable-pulseaudio
208# and uncomment this if you installed alsa-lib instead of PulseAudio
209#ac_add_options --enable-alsa
210
211# Comment out following option if you have gconf installed
212ac_add_options --disable-gconf
213
214# Comment out following options if you have not installed
215# recommended dependencies:
216ac_add_options --enable-system-sqlite
217ac_add_options --with-system-libevent
218ac_add_options --with-system-libvpx
219ac_add_options --with-system-nspr
220ac_add_options --with-system-nss
221ac_add_options --with-system-icu
222
223<!-- seems OK with icu-60, seamonkey-2.49
224# Use the internal version of icu due to execution problems-->
225
226# The BLFS editors recommend not changing anything below this line:
227ac_add_options --prefix=/usr
228ac_add_options --enable-application=suite
229
230ac_add_options --disable-crashreporter
231ac_add_options --disable-updater
232ac_add_options --disable-tests
233
234ac_add_options --enable-optimize="-O2"
235ac_add_options --enable-strip
236ac_add_options --enable-install-strip
237
238ac_add_options --enable-gio
239ac_add_options --enable-official-branding
240ac_add_options --enable-safe-browsing
241ac_add_options --enable-url-classifier
242
243# From firefox-40 (and the corresponding version of seamonkey),
244# using system cairo caused seamonkey to crash
245# frequently when it was doing background rendering in a tab.
246# This appears to again work in seamonkey-2.49.2
247ac_add_options --enable-system-cairo
248ac_add_options --enable-system-ffi
249ac_add_options --enable-system-pixman
250
251ac_add_options --with-pthreads
252
253ac_add_options --with-system-bz2
254ac_add_options --with-system-jpeg
255ac_add_options --with-system-png
256ac_add_options --with-system-zlib</literal>
257EOF</userinput></screen>
258
259 <note><para>
260 If you are compiling <application>SeaMonkey</application> in chroot, make
261 sure you have the <envar>SHELL</envar> environment variable set or prepend
262 <envar>SHELL=/bin/sh</envar> to the first make command below.
263 </para></note>
264
265 <para>
266 <application>GCC-9</application> generates some false positives with
267 <command>--Werror=fromat</command>, which prevent building
268 <application>SeaMonkey</application>. Remove this flag with the
269 following command:
270 </para>
271
272<screen><userinput>grep -rl -- '-Werror=format' |
273 xargs sed -i 's/error=format/no-&amp;/'</userinput></screen>
274
275 <para>
276 Compile <application>SeaMonkey</application> by running the following
277 commands:
278 </para>
279
280<!-- Seems to still be needed for 2.49.2
281 but not in 2.49.4
282<screen><userinput>CFLAGS_HOLD=$CFLAGS &amp;&amp;
283CXXFLAGS_HOLD=$CXXFLAGS &amp;&amp;
284EXTRA_FLAGS=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2" &amp;&amp;
285export CFLAGS+=$EXTRA_FLAGS &amp;&amp;
286export CXXFLAGS+=$EXTRA_FLAGS &amp;&amp;
287unset EXTRA_FLAGS &amp;&amp;
288-->
289<screen><userinput>CC=gcc CXX=g++ make -f client.mk</userinput></screen>
290
291 <note>
292 <para>
293 The CC and CXX variables above are only needed if
294 <xref linkend="llvm"/> is installed and you do not want to use clang.
295 </para>
296 </note>
297
298 <para>
299 This package does not come with a test suite.
300 </para>
301
302 <para>
303 Install <application>SeaMonkey</application> by issuing the following
304 commands as the <systemitem class="username">root</systemitem> user:
305 </para>
306
307
308<screen role="root"><userinput>make -f client.mk install INSTALL_SDK= &amp;&amp;
309chown -R 0:0 /usr/lib/seamonkey-&seamonkey-version; &amp;&amp;
310
311cp -v $(find -name seamonkey.1 | head -n1) /usr/share/man/man1</userinput></screen>
312<!-- Not needed: see above
313 <para>
314 Set the compilation flags back to their original values:
315 </para>
316
317<screen><userinput>export CFLAGS=$CFLAGS_HOLD &amp;&amp;
318export CXXFLAGS=$CXXFLAGS_HOLD &amp;&amp;
319unset CFLAGS_HOLD CXXFLAGS_HOLD</userinput></screen>
320-->
321 <bridgehead renderas="sect3" id="devel-seamonkey" xreflabel="SeaMonkey">
322 All the Development Libraries and Headers
323 </bridgehead>
324
325 <para>
326 If you want to install the full <application>SeaMonkey</application>
327 development environment, as the
328 <systemitem class="username">root</systemitem> user:
329 </para>
330
331<screen role="nodump"><userinput>make -C obj* install</userinput></screen>
332
333 <note>
334 <para>
335 The build directory is set by the make procedure and is dependent on
336 the system architecture, but the directory name starts with 'obj'.
337 </para>
338 </note>
339
340 </sect2>
341
342 <sect2 role="commands">
343 <title>Command Explanations</title>
344
345 <para>
346 <command>export CFLAGS= ... export CXXFLAGS= ...</command>: These
347 settings work around code which gcc6 and later would otherwise regard as
348 out-of-specification and allow it to produce a working program.
349 </para>
350
351 <para>
352 <command>make -f client.mk</command>: Mozilla products are packaged to
353 allow the use of a configuration file which can be used to pass the
354 configuration settings to the <command>configure</command> command.
355 <command>make</command> uses the <filename>client.mk</filename> file to
356 get initial configuration and setup parameters.
357 </para>
358
359 </sect2>
360
361 <sect2 role="configuration">
362 <title>Configuring SeaMonkey</title>
363
364 <para>
365 For installing various <application>SeaMonkey</application> plugins, refer
366 to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's PluginDoc
367 Project</ulink>.
368 </para>
369
370 <para>
371 Along with using the <quote>Preferences</quote> menu to configure
372 <application>SeaMonkey</application>'s options and preferences to suit
373 individual tastes, finer grain control of many options is only available
374 using a tool not available from the general menu system. To access this
375 tool, you'll need to open a browser window and enter
376 <systemitem role="url">about:config</systemitem> in the address bar. This
377 will display a list of the configuration preferences and information
378 related to each one. You can use the <quote>Filter:</quote> bar to enter
379 search criteria and narrow down the listed items. Changing a preference
380 can be done using two methods. One, if the preference has a boolean value
381 (True/False), simply double-click on the preference to toggle the value
382 and two, for other preferences simply right-click on the desired line,
383 choose <quote>Modify</quote> from the menu and change the value. Creating
384 new preference items is accomplished in the same way, except choose
385 <quote>New</quote> from the menu and provide the desired data into the
386 fields when prompted.
387 </para>
388
389 <tip>
390 <para>
391 There is a multitude of configuration parameters you can tweak to
392 customize <application>SeaMonkey</application>. A very extensive list of
393 these parameters can be found at
394 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
395 </para>
396 </tip>
397
398 <para>
399 If you use a desktop environment like <application>Gnome</application> or
400 <application>KDE</application> you may wish to create a
401 <filename>seamonkey.desktop</filename> file so that
402 <application>SeaMonkey</application> appears in the panel's menus. If you
403 didn't enable <application>Startup-Notification</application> in your
404 mozconfig change the StartupNotify line to false. As the
405 <systemitem class="username">root</systemitem> user:
406 </para>
407
408<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
409
410cat &gt; /usr/share/applications/seamonkey.desktop &lt;&lt; "EOF"
411[Desktop Entry]
412Encoding=UTF-8
413Type=Application
414Name=SeaMonkey
415Comment=The Mozilla Suite
416Icon=seamonkey
417Exec=seamonkey
418Categories=Network;GTK;Application;Email;Browser;WebBrowser;News;
419StartupNotify=true
420Terminal=false
421EOF
422
423ln -sfv /usr/lib/seamonkey-&seamonkey-version;/chrome/icons/default/seamonkey.png \
424 /usr/share/pixmaps</userinput></screen>
425 </sect2>
426
427 <sect2 role="content">
428 <title>Contents</title>
429
430 <segmentedlist>
431 <segtitle>Installed Programs</segtitle>
432 <segtitle>Installed Libraries</segtitle>
433 <segtitle>Installed Directory</segtitle>
434
435 <seglistitem>
436 <seg>seamonkey</seg>
437 <seg>
438 Numerous libraries, browser, and email/newsgroup components, plugins,
439 extensions, and helper modules installed in <filename
440 class="directory">/usr/lib/seamonkey-&seamonkey-version;</filename>
441 </seg>
442 <seg>
443 /usr/include/seamonkey-&seamonkey-version; (optional),
444 /usr/lib/seamonkey-&seamonkey-version;,
445 /usr/lib/seamonkey-devel-&seamonkey-version; (optional), and
446 /usr/share/idl/seamonkey-&seamonkey-version; (optional)
447 </seg>
448 </seglistitem>
449 </segmentedlist>
450
451 <variablelist>
452 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
453 <?dbfo list-presentation="list"?>
454 <?dbhtml list-presentation="table"?>
455
456 <varlistentry id="seamonkey-prog">
457 <term><command>seamonkey</command></term>
458 <listitem>
459 <para>
460 is the Mozilla browser/email/newsgroup/chat client suite.
461 </para>
462 <indexterm zone="seamonkey seamonkey-prog">
463 <primary sortas="b-seamonkey">seamonkey</primary>
464 </indexterm>
465 </listitem>
466 </varlistentry>
467 </variablelist>
468 </sect2>
469</sect1>
Note: See TracBrowser for help on using the repository browser.