source: xsoft/graphweb/mozilla.xml@ 15e255f

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 15e255f was 15e255f, checked in by Bruce Dubbs <bdubbs@…>, 19 years ago

Added patch to allow building mozilla with gcc4

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

  • Property mode set to 100644
File size: 17.7 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY mozilla-download-http "http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
8 <!ENTITY mozilla-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
9 <!ENTITY mozilla-md5sum "ed54ad54b4b5de85c7916e7d1efa0ae3">
10 <!ENTITY mozilla-size "29 MB">
11 <!ENTITY mozilla-buildsize "620 MB">
12 <!ENTITY mozilla-time "12.8 SBU">
13
14 <!ENTITY mozilla-enigmail-version "0.92.0">
15 <!ENTITY mozilla-enigmail-md5sum "50c369ce6d6fcb2d275cd30319a601ff">
16 <!ENTITY mozilla-ipc-version "1.1.3">
17 <!ENTITY mozilla-ipc-md5sum "64ba4c6e3b52568468c4f6680ec7e679">
18]>
19
20<sect1 id="mozilla" xreflabel="Mozilla-&mozilla-version;">
21 <?dbhtml filename="mozilla.html" ?>
22
23 <sect1info>
24 <othername>$LastChangedBy$</othername>
25 <date>$Date$</date>
26 </sect1info>
27
28 <title>Mozilla-&mozilla-version;</title>
29
30 <indexterm zone="mozilla">
31 <primary sortas="a-Mozilla">Mozilla</primary>
32 </indexterm>
33
34 <sect2 role="package">
35 <title>Introduction to Mozilla</title>
36
37 <para><application>Mozilla</application> is a browser suite, the Open
38 Source sibling of <application>Netscape</application>. It includes the
39 browser, composer, mail and news clients, a calendar client and an
40 IRC client.</para>
41
42 <para>The <application>Mozilla</application> project also hosts two
43 subprojects that aim to satisfy the needs of users who don't need the
44 complete browser suite or prefer to have separate applications for
45 browsing and e-mail. These subprojects are <ulink
46 url="http://www.mozilla.org/products/firefox/">Mozilla Firefox</ulink>,
47 (a stand-alone browser based on the <application>Mozilla</application>
48 source code) and <ulink
49 url="http://www.mozilla.org/products/thunderbird/">Mozilla
50 Thunderbird</ulink>, (a stand-alone mail client based on the
51 <application>Mozilla</application> source code). The build instructions
52 for these two applications are discussed in separate sections:</para>
53
54 <itemizedlist>
55 <listitem>
56 <para><xref linkend="firefox"/></para>
57 </listitem>
58 <listitem>
59 <para><xref linkend="thunderbird"/></para>
60 </listitem>
61 </itemizedlist>
62
63 <bridgehead renderas="sect3">Package Information</bridgehead>
64 <itemizedlist spacing="compact">
65 <listitem>
66 <para>Download (HTTP): <ulink url="&mozilla-download-http;"/></para>
67 </listitem>
68 <listitem>
69 <para>Download (FTP): <ulink url="&mozilla-download-ftp;"/></para>
70 </listitem>
71 <listitem>
72 <para>Download MD5 sum: &mozilla-md5sum;</para>
73 </listitem>
74 <listitem>
75 <para>Download size: &mozilla-size;</para>
76 </listitem>
77 <listitem>
78 <para>Estimated disk space required: &mozilla-buildsize;</para>
79 </listitem>
80 <listitem>
81 <para>Estimated build time: &mozilla-time;</para>
82 </listitem>
83 </itemizedlist>
84
85 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
86 <itemizedlist spacing="compact">
87 <listitem>
88 <para>Required patch: <ulink
89 url="&patch-root;/mozilla-&mozilla-version;-gcc4-1.patch"/></para>
90 </listitem>
91 </itemizedlist>
92
93 <para>To enable the <application>Enigmail</application> extension to
94 the <application>Mozilla</application> mail client, you'll need to
95 download the two tarballs below. The <application>Enigmail</application>
96 extension allows users to access the authentication and encryption
97 features provided by the <application>GnuPG</application> package.</para>
98
99 <itemizedlist spacing='compact'>
100 <listitem>
101 <para><ulink
102 url="http://downloads.mozdev.org/enigmail/src/enigmail-&mozilla-enigmail-version;.tar.gz"/>
103 </para>
104 </listitem>
105 <listitem>
106 <para>Download MD5 sum (Enigmail): &mozilla-enigmail-md5sum;</para>
107 </listitem>
108 <listitem>
109 <para><ulink
110 url="http://downloads.mozdev.org/enigmail/src/ipc-&mozilla-ipc-version;.tar.gz"/>
111 </para>
112 </listitem>
113 <listitem>
114 <para>Download MD5 sum (IPC): &mozilla-ipc-md5sum;</para>
115 </listitem>
116 </itemizedlist>
117
118 <bridgehead renderas="sect3">Mozilla Dependencies</bridgehead>
119
120 <bridgehead renderas="sect4">Required</bridgehead>
121 <para><xref linkend="zip"/>,
122 <xref linkend="gtk2"/>,
123 <xref linkend="libidl"/></para>
124
125 <bridgehead renderas="sect4">Recommended</bridgehead>
126 <para><xref linkend="gnupg"/> (for the <application>Enigmail</application>
127 extension)</para>
128
129 <bridgehead renderas="sect4">Optional</bridgehead>
130 <para><xref linkend="libjpeg"/>,
131 <xref linkend="unzip"/>,
132 <xref linkend="gnome-vfs"/> (to build the gnomevfs extension),
133 <xref linkend="libart_lgpl"/>,
134 <xref linkend="heimdal"/> or <xref linkend="mitkrb"/>
135 (for the GSSAPI libraries to build the negotiateauth extension),
136 <xref linkend="doxygen"/>,
137 <ulink url="http://xprint.mozdev.org/">Xprint</ulink>,
138 <ulink url="http://perens.com/FreeSoftware/">Electric Fence</ulink> and
139 <ulink url="http://cairographics.org/">Cairo</ulink></para>
140
141 </sect2>
142
143 <sect2 role="installation">
144 <title>Installation of Mozilla</title>
145
146 <para>Compile <application>Mozilla</application> by running the
147 following commands:</para>
148
149<screen><userinput>patch -Np1 -i ../mozilla-&mozilla-version;-gcc4-1.patch &amp;&amp;
150export MOZILLA_OFFICIAL="1" &amp;&amp;
151export BUILD_OFFICIAL="1" &amp;&amp;
152export MOZ_CO_PROJECT="suite" &amp;&amp;
153./configure --prefix=/usr \
154 --with-default-mozilla-five-home=/usr/lib/mozilla \
155 --with-system-zlib \
156 --with-system-png \
157 --enable-application=suite \
158 --enable-default-toolkit=gtk2 \
159 --enable-extensions=all \
160 --enable-crypto \
161 --enable-xft \
162 --enable-xinerama \
163 --enable-optimize \
164 --enable-reorder \
165 --enable-strip \
166 --enable-cpp-rtti \
167 --enable-calendar \
168 --disable-freetype2 \
169 --disable-accessibility \
170 --disable-debug \
171 --disable-tests \
172 --disable-logging \
173 --disable-pedantic \
174 --disable-installer &amp;&amp;
175make</userinput></screen>
176
177 <para>You should add the <option>--with-system-jpeg</option> switch
178 to the <command>configure</command> script if you have
179 <application>libjpeg</application> installed.</para>
180
181 <para>If you're building the <application>Mozilla</application> mail
182 and news clients and plan to install the <application>Enigmail</application>
183 extension, execute the following steps:</para>
184
185<screen><userinput>tar -zxf ../enigmail-&mozilla-enigmail-version;.tar.gz -C extensions &amp;&amp;
186tar -zxf ../ipc-&mozilla-ipc-version;.tar.gz -C extensions &amp;&amp;
187build/autoconf/make-makefile extensions/ipc extensions/enigmail &amp;&amp;
188make -C extensions/ipc &amp;&amp;
189make -C extensions/enigmail</userinput></screen>
190
191 <para>Install <application>Mozilla</application> (as the
192 <systemitem class="username">root user</systemitem>) as follows:</para>
193
194<screen role="root"><userinput>make install &amp;&amp;
195install -v -d -m755 /usr/include/mozilla-&mozilla-version;/nss &amp;&amp;
196cp -v -Lf dist/private/nss/*.h dist/public/nss/*.h \
197 /usr/include/mozilla-&mozilla-version;/nss &amp;&amp;
198ln -v -nsf mozilla-&mozilla-version; /usr/include/mozilla &amp;&amp;
199if [ -d /usr/lib/mozilla/plugins ]; then
200 mv -v /usr/lib/mozilla/plugins/* /usr/lib/mozilla-&mozilla-version;/plugins
201 rm -v -rf /usr/lib/mozilla
202fi &amp;&amp;
203ln -v -nsf mozilla-&mozilla-version; /usr/lib/mozilla</userinput></screen>
204
205 <para>If you're installing the <application>Enigmail</application>
206 extension, issue the following commands as the
207 <systemitem class="username">root</systemitem> user:</para>
208
209<screen role="root"><userinput>make -C extensions/ipc install &amp;&amp;
210make -C extensions/enigmail install</userinput></screen>
211
212 <para>Some libraries, including the Netscape Portable Runtime (NSPR) and
213 Network Security Services (NSS) libraries, installed by
214 <application>Mozilla</application> are also needed by other packages.
215 These libraries should be in <filename class="directory">/usr/lib</filename>
216 so that other packages can link against them. As the <systemitem
217 class="username">root</systemitem> user, move them as follows:</para>
218
219<screen role="root"><userinput>for i in \
220 lib{nspr4,plc4,plds4,nss3,smime3,softokn3,ssl3}.so libsoftokn3.chk
221do
222 mv -v /usr/lib/mozilla-&mozilla-version;/$i /usr/lib/
223 ln -v -sf ../$i /usr/lib/mozilla-&mozilla-version;/
224done</userinput></screen>
225
226 <para>Create the required component registries to enable multi-user
227 installs. These steps should be preformed by the <systemitem
228 class="username">root</systemitem> user each time a
229 <application>Mozilla</application> add-on is installed. This will allow
230 unprivileged users to run <command>mozilla</command>. Enable multi-user
231 operation by executing the following:</para>
232
233<screen role="root"><userinput>cd /usr/lib/mozilla-&mozilla-version; &amp;&amp;
234export LD_LIBRARY_PATH="$PWD" &amp;&amp;
235export MOZILLA_FIVE_HOME="$PWD" &amp;&amp;
236./regxpcom &amp;&amp;
237./regchrome &amp;&amp;
238touch `find . -name *.rdf`</userinput></screen>
239
240 <note>
241 <para>You should run <command>/usr/bin/mozilla</command> once as the
242 <systemitem class="username">root</systemitem> user (or any user with
243 write privileges) to create some necessary additional files in the
244 <filename class='directory'>/usr</filename> hierarchy.</para>
245 </note>
246
247 <para>Lastly, unset the build variables from the unprivileged user's
248 environment:</para>
249
250<screen><userinput>unset MOZILLA_OFFICIAL &amp;&amp;
251unset BUILD_OFFICIAL &amp;&amp;
252unset MOZ_CO_PROJECT</userinput></screen>
253
254 </sect2>
255
256 <sect2 role="commands">
257 <title>Optional Extra Switches</title>
258
259 <para>You may wish to run <command>./configure --help</command> and review
260 each of the listed options to discover what affect they have on the build.
261 Feel free to add or remove options to tailor the build to your desires.
262 Listed below are some common options not listed above but can be added to
263 the <command>configure</command> command in order to have the described
264 effect on the <application>Mozilla</application> compile.</para>
265
266 <para><option>--with-system-jpeg</option>: Uses the system-installed copy
267 of <application>libjpeg</application> instead of the bundled copy.</para>
268
269 <para><option>--enable-elf-dynstr-gc</option>: Removes un-referenced
270 strings from ELF shared objects generated during the build. Note that this
271 option breaks the build on alpha.</para>
272
273 <para><option>--disable-mailnews</option>: Disables the mail and news
274 clients.</para>
275
276 <para><option>--disable-ldap</option>: Disables LDAP support, recommended
277 if mail is disabled.</para>
278
279 <para><option>--enable-xterm-updates</option>: Displays the current command
280 in the <command>xterm</command> window title during the compilation.</para>
281
282 <para><option>--enable-plaintext-editor-only</option>: Disables support
283 for HTML editing. Do not use this switch if you are building the mail-news
284 component.</para>
285
286 </sect2>
287
288 <sect2 role="commands">
289 <title>Command Explanations</title>
290
291 <para><command>export MOZILLA_OFFICIAL="1";
292 export BUILD_OFFICIAL="1"</command>: Set some variables that affect what and
293 how the package is built. These two exports specify a distribution is being
294 built.</para>
295
296 <para><parameter>--with-default-mozilla-five-home=/usr/lib/mozilla</parameter>:
297 Sets the default value for <envar>MOZILLA_FIVE_HOME</envar>.</para>
298
299 <para><parameter>--with-system-zlib --with-system-png </parameter>: Use the
300 system-installed versions of these packages.</para>
301
302 <para><parameter>--enable-application=suite</parameter>: Identifies the build
303 as a <application>Mozilla</application> suite build.</para>
304
305 <para><parameter>--enable-default-toolkit=gtk2</parameter>: Use the
306 GTK2 toolkit for graphics rendering.</para>
307
308 <para><parameter>--enable-extensions=all</parameter>: Enables all available
309 extensions. If you want, you can disable any or all extensions other than the
310 browser by changing this switch to
311 <option>--enable-extensions="default,-venkman,-inspector,..."</option>.
312 For a short description of the various extensions available with the
313 <application>Mozilla</application> source, see
314 <ulink
315 url="http://linuxfromscratch.org/~tushar/downloads/mozilla-extensions.txt"/>.
316 </para>
317
318 <para><parameter>--enable-crypto</parameter>: Enable the Personal
319 Security Manager to enable SSL connections.</para>
320
321 <para><parameter>--enable-calendar</parameter>: Builds the calendar
322 application. Removed this parameter if you don't wish to build it.</para>
323
324 <para><parameter>--enable-xft; --disable-freetype2</parameter>: Enable Xft
325 support which automatically pulls in the <application>FreeType</application>
326 libraries.</para>
327
328 <para><parameter>--enable-xinerama; --enable-optimize; --enable-reorder;
329 --enable-strip; --enable-cpp-rtti --disable-accessibility; --disable-debug;
330 --disable-tests; --disable-logging; --disable-pedantic;
331 --disable-installer</parameter>: Various options that affect what components
332 are built and some optimization options. You can pick and choose from these
333 options. More information on them, and many other available options, can be
334 found by running <command>./configure --help</command>.</para>
335
336 <para><command>install -d /usr/include/mozilla-&mozilla-version;/nss;
337 cp -Lf ...</command>: Copy the NSS interface headers that
338 are not copied by <command>make install</command>.</para>
339
340 <para><command>if [ -d /usr/lib/mozilla/plugins ] ... fi</command>: Some
341 applications may have already installed <application>Mozilla</application>
342 plugins. This set of commands move any existing plugins to the newly created
343 plugin directory, then removes the existing
344 <filename class='directory'>/usr/lib/mozilla</filename> directory.</para>
345
346 <para><command>ln -nsf mozilla-&mozilla-version; ...</command>:
347 <application>Mozilla</application> installs headers and libraries in version
348 specific directories. These commands makes symbolic links so that
349 applications depending on <application>Mozilla</application> (such as
350 <application>OpenOffice</application>, <application>Galeon</application>,
351 etc.) don't need to know which version of <application>Mozilla</application>
352 is installed.</para>
353
354 </sect2>
355
356 <sect2 role="configuration">
357 <title>Configuring Mozilla</title>
358
359 <para>No specific configuration is required as long as the
360 <command>mozilla</command> script is in the user's path. If
361 <application>Mozilla</application> is installed in a non-standard location,
362 then make a symlink to the <command>mozilla</command> script from
363 <filename class="directory">/usr/bin</filename>.</para>
364
365 <para>Many applications look for <command>netscape</command> when they need
366 to open a browser. You may make the following symlink for convenience (as
367 the <systemitem class="username">root</systemitem> user).</para>
368
369<screen role="root"><userinput>ln -v -sf mozilla /usr/bin/netscape</userinput></screen>
370
371 <para>For installing various <application>Mozilla</application> plugins,
372 refer to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's
373 PluginDoc Project</ulink>. If you have <xref linkend="jdk"/> already
374 installed, create the following link as the
375 <systemitem class="username">root</systemitem> user to utilize the
376 <application>JAVA</application> plugin: </para>
377
378<screen role="root"><userinput>ln -v -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so \
379 /usr/lib/mozilla-&mozilla-version;/plugins</userinput></screen>
380
381 </sect2>
382
383 <sect2 role="content">
384 <title>Contents</title>
385
386 <segmentedlist>
387 <segtitle>Installed Program</segtitle>
388 <segtitle>Installed Libraries</segtitle>
389 <segtitle>Installed Directories</segtitle>
390
391 <seglistitem>
392 <seg>mozilla</seg>
393 <seg>Numerous libraries, browser, and email/newsgroup components,
394 plugins, extensions, and helper modules installed in <filename
395 class='directory'>/usr/lib/mozilla-&mozilla-version;</filename></seg>
396 <seg>/usr/include/mozilla-&mozilla-version;,
397 /usr/lib/mozilla-&mozilla-version;, and
398 /usr/share/idl/mozilla-&mozilla-version;</seg>
399 </seglistitem>
400 </segmentedlist>
401
402 <variablelist>
403 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
404 <?dbfo list-presentation="list"?>
405 <?dbhtml list-presentation="table"?>
406
407 <varlistentry id="mozilla-prog">
408 <term><command>mozilla</command></term>
409 <listitem>
410 <para>is a browser/email/newsgroup/calendar/chat client suite. The
411 various components such as the Composer, mail-news client, calendar,
412 IRC chat client and address book can be accessed from the menu after
413 <command>mozilla</command> starts or via command-line switches to
414 the <command>mozilla</command> script. Issue
415 <command>man mozilla</command> for additional information.</para>
416 <indexterm zone="mozilla mozilla-prog">
417 <primary sortas="b-mozilla">mozilla</primary>
418 </indexterm>
419 </listitem>
420 </varlistentry>
421
422 </variablelist>
423
424 </sect2>
425
426</sect1>
Note: See TracBrowser for help on using the repository browser.