Ignore:
Timestamp:
06/13/2004 08:45:42 PM (20 years ago)
Author:
Bruce Dubbs <bdubbs@…>
Branches:
10.0, 10.1, 11.0, 11.1, 11.2, 11.3, 12.0, 12.1, 6.0, 6.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
Children:
16998db6
Parents:
87ba6cd5
Message:

XML update for Chapter 35

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • xsoft/graphweb/mozilla.xml

    r87ba6cd5 rf939f05  
     1<?xml version="1.0" encoding="ISO-8859-1"?>
     2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
     3   "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
     4  <!ENTITY % general-entities SYSTEM "../../general.ent">
     5  %general-entities;
     6
     7  <!ENTITY mozilla-download-http "http://ftp.mozilla.org/pub/mozilla/releases/mozilla&mozilla-version;/src/mozilla-source-&mozilla-version;.tar.bz2">
     8  <!ENTITY mozilla-download-ftp  "ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/src/mozilla-source-&mozilla-version;.tar.bz2">
     9  <!ENTITY mozilla-size          "39 MB">
     10  <!ENTITY mozilla-buildsize     "550 MB">
     11  <!ENTITY mozilla-time          "22.64 SBU">
     12
     13  <!ENTITY enigmail-version      "0.83.6">
     14  <!ENTITY ipc-version           "1.0.5">
     15]>
     16
    117<sect1 id="mozilla" xreflabel="Mozilla-&mozilla-version;">
    218<?dbhtml filename="mozilla.html" ?>
    319<title>Mozilla-&mozilla-version;</title>
    420
    5 &mozilla-intro;
    6 &mozilla-inst;
    7 &mozilla-exp;
    8 &mozilla-config;
    9 &mozilla-desc;
     21<sect2>
     22<title>Introduction to <application>Mozilla</application></title>
     23
     24<para><application>Mozilla</application> is a browser suite, the Open Source
     25sibling of <application>Netscape</application>. It includes the browser,
     26composer, mail client, a calendar client and an <acronym>IRC</acronym> client.</para>
     27
     28<para>The Mozilla project also hosts two subprojects that aim to satisfy the needs
     29of users who don't need the complete browser suite or like to have separate applications
     30for browsing and e-mail. These subprojects are
     31<ulink url="http://www.mozilla.org/products/firefox/">Mozilla Firefox</ulink>,
     32(a stand-alone browser based on the Mozilla source code) and
     33<ulink url="http://www.mozilla.org/projects/thunderbird/">Mozilla Thunderbird</ulink>,
     34(a stand-alone mail client based on the Mozilla source code). The build instructions
     35for these two applications are discussed in separate sections:</para>
     36
     37<itemizedlist>
     38<listitem><para><xref linkend="firefox"/></para></listitem>
     39<listitem><para><xref linkend="thunderbird"/></para></listitem>
     40</itemizedlist>
     41
     42<sect3><title>Package information</title>
     43<itemizedlist spacing='compact'>
     44<listitem><para>Download (HTTP): <ulink
     45url="&mozilla-download-http;"/></para></listitem>
     46<listitem><para>Download (FTP): <ulink
     47url="&mozilla-download-ftp;"/></para></listitem>
     48<listitem><para>Download size: &mozilla-size;</para></listitem>
     49<listitem><para>Estimated Disk space required:
     50&mozilla-buildsize;</para></listitem>
     51<listitem><para>Estimated build time:
     52&mozilla-time;</para></listitem></itemizedlist>
     53</sect3>
     54
     55<sect3><title><application>Mozilla</application> dependencies</title>
     56<sect4><title>Required</title>
     57<para><xref linkend="zip"/>, <xref linkend="GTK2"/>,
     58<xref linkend="libIDL"/>, <xref linkend="libmng"/> and
     59<xref linkend="which"/>
     60</para></sect4>
     61<sect4><title>Recommended</title>
     62<para><xref linkend="gnupg"/> (for Enigmail extension)
     63</para></sect4>
     64</sect3>
     65
     66<sect3><title>Additional downloads</title>
     67<itemizedlist spacing='compact'>
     68<listitem><para><ulink url="http://enigmail.mozdev.org/">Enigmail Extension
     69(Version &enigmail-version;)</ulink>
     70(Useful only if Mozilla Mail is built)
     71<!-- <ulink
     72url="http://downloads.mozdev.org/enigmail/src/enigmail-&enigmail-version;.tar.gz"/>
     73-->
     74</para></listitem>
     75<listitem><para><ulink url="http://enigmail.mozdev.org/">Inter Process
     76Communicaton Extension (Version &ipc-version;)</ulink>
     77(Needed for Enigmail)
     78<!--
     79<ulink
     80url="http://downloads.mozdev.org/enigmail/src/ipc-&ipc-version;.tar.gz"/>
     81-->
     82</para></listitem>
     83</itemizedlist>
     84</sect3>
     85
     86</sect2>
     87
     88<sect2>
     89<title>Installation of <application>Mozilla</application></title>
     90
     91<!--
     92<note>
     93<para>According to the financial institutions, the following hack makes your
     94browser insecure. You have been warned. Many sites use an MS-IE specific tag
     95(autocomplete=off) to prevent autocomplete from working in some forms. This
     96tag is now supported in <application>Mozilla</application> to appease the financial institutions. As per
     97the requirements of the financial institutions, they will not even accept a
     98solution where this a preference option. However our opinion is that it should
     99be in the hands of the user. To enable autocomplete to bypass
     100this restriction, we need to make a slight modification in the code.</para>
     101
     102<para>Open the file <filename>extensions/wallet/src/wallet.cpp</filename> in
     103the <application>Mozilla</application> source tree and search for the line:
     104<screen>#define WALLET_DONT_CACHE_ALL_PASSWORDS</screen>
     105Then delete or comment out the line.  Now, if anyone tells you MS-IE is user
     106friendly, give them this example!</para>
     107</note>
     108-->
     109
     110<warning><para>Do not install Mozilla, Mozilla Firefox and Mozilla Thunderbird
     111with a single prefix since they install identically named files. The BLFS Book
     112installs Mozilla in <filename>/usr</filename> while Mozilla Firefox and Mozilla
     113Thunderbird are installed in <filename>/opt</filename>.</para></warning>
     114
     115<para>If you plan to install Enigmail, extract the ipc and enigmail tarballs
     116in the <filename class="directory">extensions</filename> directory.</para>
     117
     118<para>Compile <application>Mozilla</application> by running the following
     119commands:</para>
     120
     121<screen><userinput><command>export MOZILLA_OFFICIAL="1" &amp;&amp;
     122export BUILD_OFFICIAL="1" &amp;&amp;
     123./configure --prefix=/usr \
     124            --with-default-mozilla-five-home=/usr/lib/mozilla \
     125            --enable-default-toolkit=gtk2 \
     126            --with-x --with-system-zlib \
     127            --with-system-jpeg --with-system-png --with-system-mng \
     128            --enable-xft --enable-crypto \
     129            --disable-accessibility \
     130            --disable-tests --disable-debug \
     131            --disable-logging --enable-reorder \
     132            --enable-strip --disable-pedantic \
     133            --enable-cpp-rtti --enable-extensions=all &amp;&amp;
     134make</command></userinput></screen>
     135
     136<para>If installing Enigmail, execute the following steps:</para>
     137
     138<screen><userinput><command>build/autoconf/make-makefile extensions/ipc extensions/enigmail &amp;&amp;
     139make -C extensions/ipc &amp;&amp;
     140make -C extensions/enigmail</command></userinput></screen>
     141
     142<para>Install <application>Mozilla</application> as follows:</para>
     143
     144<screen><userinput><command>make install &amp;&amp;
     145install -d /usr/include/mozilla-&mozilla-version;/nss &amp;&amp;
     146cp -Lf dist/private/nss/*.h dist/public/nss/*.h \
     147   /usr/include/mozilla-&mozilla-version;/nss &amp;&amp;
     148ln -nsf mozilla-&mozilla-version; /usr/include/mozilla &amp;&amp;
     149ln -nsf mozilla-&mozilla-version; /usr/lib/mozilla</command></userinput></screen>
     150
     151<para>Some libraries installed by mozilla are also needed by other packages. These
     152libraries should be in <filename>/usr/lib</filename> so that other packages can
     153link against them. Move them as follows:</para>
     154
     155<screen><userinput><command>for i in lib{nspr4,plc4,plds4,nss3,smime3,softokn3,ssl3}.so libsoftokn3.chk
     156do
     157   mv /usr/lib/mozilla-&mozilla-version;/$i /usr/lib/
     158   ln -sf ../$i /usr/lib/mozilla-&mozilla-version;/
     159done</command></userinput></screen>
     160
     161<para>Install Enigmail as follows:</para>
     162
     163<screen><userinput><command>make -C extensions/ipc install &amp;&amp;
     164make -C extensions/enigmail install</command></userinput></screen>
     165
     166<para>To enable multi-user operation, execute the following:</para>
     167
     168<screen><userinput><command>cd /usr/lib/mozilla-&mozilla-version; &amp;&amp;
     169export LD_LIBRARY_PATH="/usr/lib/mozilla-&mozilla-version;" &amp;&amp;
     170export MOZILLA_FIVE_HOME="/usr/lib/mozilla-&mozilla-version;" &amp;&amp;
     171./regxpcom &amp;&amp;
     172./regchrome &amp;&amp;
     173touch `find /usr/lib/mozilla-&mozilla-version; -name *.rdf`</command></userinput></screen>
     174
     175</sect2>
     176
     177<sect2>
     178<title>Optional Extra Switches</title>
     179
     180<para>Each of these switches can be added to the configure line in order to
     181have the described effect on the <application>Mozilla</application> compile.</para>
     182
     183<para><option>--enable-elf-dynstr-gc</option>: Removes un-referenced
     184strings from <acronym>ELF</acronym> shared objects generated during the build.
     185Note that this option breaks the build on alpha.</para>
     186
     187<para><option>--disable-mailnews</option>: Disable the mail and news
     188clients.</para>
     189
     190<para><option>--disable-ldap</option>: Disable <acronym>LDAP</acronym>
     191support, recommended if mail is disabled.</para>
     192
     193<para><option>--enable-calendar</option>: Build the calendar client.</para>
     194
     195<para><option>--enable-xterm-updates</option>: This option is
     196for enabling the <command>xterm</command> title with the current command when
     197compiling.</para>
     198
     199<para><option>--enable-plaintext-editor-only</option>: Disable support
     200for <acronym>HTML</acronym> editing. Do not use this switch if you are building
     201the mail-news component.</para>
     202
     203</sect2>
     204
     205<sect2>
     206<title>Command explanations</title>
     207
     208<para><screen><command>export MOZILLA_OFFICIAL="1" &amp;&amp;
     209export BUILD_OFFICIAL="1"</command></screen>
     210Set some variables that affect what and how the package is built. The first two exports
     211specify a distribution is being built.</para>
     212
     213<!--
     214<para> The last export specifies that we
     215are ok with the <acronym>LGPL</acronym> versioned libart.</para>
     216-->
     217
     218<para><parameter>--prefix=/usr</parameter>: Previously mozilla did
     219not support the make install option. Hence, the package was installed in
     220<filename>/opt</filename>. The package now supports "make install" and follows
     221the <acronym>FHS</acronym> guidelines for installation. Therefore the book now
     222recommends installation in a system wide prefix such as <filename>/usr
     223</filename>.</para>
     224
     225<para><screen><option>--enable-toolkit-gtk2</option></screen>Use gtk2
     226toolkit.</para>
     227
     228<para><screen><option>--with-system-zlib --with-system-jpeg \
     229--with-system-png --with-system-mng</option></screen>
     230Use the system versions for these packages.</para>
     231
     232<para><option>--enable-xft</option>: Enable the Xft support. You need
     233<application>fontconfig</application> or the latest <application>XFree86
     234</application> version to enable xft.</para>
     235
     236<para><option>--enable-crypto</option>: Enable the Personal
     237Security Manager to enable <acronym>SSL</acronym> connections.</para>
     238
     239<para><screen><option>--disable-jsd --disable-accessibility \
     240--disable-tests --disable-debug \
     241--disable-dtd-debug \
     242--disable-logging --enable-reorder \
     243--enable-strip \
     244--enable-cpp-rtti</option></screen>
     245Various options that affect what components are built and some optimization
     246options. You can pick and choose from these options.  More information on them
     247can be found in the <application>Mozilla</application> <command>configure
     248</command> script help. Not all options are used in the instructions given
     249above.</para>
     250
     251<para><option>--enable-extensions=...</option>: Enables extensions.  If you
     252want, you can disable all extensions other than the browser by changing this
     253switch to <parameter>--enable-extensions="default,-venkman,-inspector,-irc"</parameter>.
     254For a short description of the various extensions available with the mozilla
     255source, see
     256<ulink url="http://linuxfromscratch.org/~tushar/downloads/mozilla-extensions.txt"/>.</para>
     257
     258<para><screen><command>install -d /usr/include/mozilla-&mozilla-version;/nss
     259cp -Lf dist/private/nss/*.h dist/public/nss/*.h \
     260   /usr/include/mozilla-&mozilla-version;/nss</command></screen>
     261Copy the nss headers that are not copied by make install.</para>
     262
     263<!--
     264<para><userinput>install -d /usr/lib/mozilla-&mozilla-version;/openoffice</userinput> :
     265Make a directory to store static libraries that openoffice needs during compilation.
     266These libraries are not installed by default.</para>
     267-->
     268
     269<para><command>ln -nsf mozilla-&mozilla-version; ...</command>:
     270<application>Mozilla</application> installs headers and libraries in version
     271specific directories. This command makes symbolic links so that applications that
     272depend on <application>Mozilla</application> (such as <application>OpenOffice
     273</application>, <application>Galeon</application>, etc.) don't need to know
     274which version of <application>Mozilla</application> is installed.</para>
     275
     276<para><screen><command>export LD_LIBRARY_PATH="/usr/lib/mozilla-&mozilla-version;" &amp;&amp;
     277export MOZILLA_FIVE_HOME="/usr/lib/mozilla-&mozilla-version;" &amp;&amp;
     278./regxpcom &amp;&amp;
     279./regchrome &amp;&amp;
     280touch `find /usr/lib/mozilla-${VERSION} -name *.rdf`</command>
     281</screen>
     282Create the required component registries to enable multi-user installs. These
     283steps should be preformed by the root user each time a mozilla add-on is
     284installed. This will allow normal users to run mozilla.</para>
     285
     286</sect2>
     287
     288<sect2>
     289<title>Configuring <application>Mozilla</application></title>
     290
     291<para>No specific configuration is required as long as the <command>mozilla
     292</command> binary is in the path for the user. If <application>Mozilla</application>
     293is installed in a non-standard location, then make a symlink to the
     294<command>mozilla</command> binary from <filename class="directory">/usr/bin</filename>.
     295The same thing applies for <application>Mozilla Firefox</application> and
     296<application>Mozilla Thunderbird</application>.</para>
     297
     298<para>Many applications look for <command>netscape</command> when they need to
     299open a browser. You may make the following symlink for convenience.</para>
     300
     301<screen><userinput><command>ln -sf mozilla /usr/bin/netscape</command></userinput></screen>
     302
     303<para>For installing various <application>Mozilla</application> plugins, refer
     304to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's PluginDoc Project</ulink></para>
     305
     306</sect2>
     307
     308<sect2>
     309<title>Contents</title>
     310
     311<para>The <application>Mozilla</application> package contains
     312<command>mozilla</command>. The various components such as composer and mail-news can be accessed
     313from the menu after <command>mozilla</command> starts or via command-line
     314switches to the <command>mozilla</command> binary.
     315</para>
     316
     317</sect2>
    10318
    11319</sect1>
Note: See TracChangeset for help on using the changeset viewer.