mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-02-02 22:07:15 +08:00
Updated to Mozilla-1.7.12, changed the build method to use 'client.mk' and '.mozconfig', added instructions to use system-installed NSS/NSPR libraries and added additional configuration information
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5593 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
parent
e165fddb1b
commit
7f588e9acb
@ -484,7 +484,7 @@
|
||||
<!ENTITY openoffice-version "2.0.0">
|
||||
|
||||
<!-- Chapter 35 -->
|
||||
<!ENTITY mozilla-version "1.7.11">
|
||||
<!ENTITY mozilla-version "1.7.12">
|
||||
<!ENTITY firefox-version "1.5">
|
||||
<!ENTITY galeon-version "1.3.21">
|
||||
<!ENTITY dillo-version "0.8.5">
|
||||
|
@ -44,6 +44,12 @@
|
||||
<listitem>
|
||||
<para>January 25th, 2006</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[randy] - Updated to Mozilla-1.7.12, changed the build
|
||||
method to use 'client.mk' and '.mozconfig', added instructions
|
||||
to use system-installed NSS/NSPR libraries and added additional
|
||||
configuration information.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[randy] - Changed the default to render SVG graphics in the
|
||||
Firefox instructions.</para>
|
||||
@ -55,12 +61,14 @@
|
||||
<para>January 23rd, 2006</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[randy] - Updated to Thunderbird-1.5 and changed the build
|
||||
method to use 'client.mk' and '.mozconfig'.</para>
|
||||
<para>[randy] - Updated to Thunderbird-1.5, changed the build
|
||||
method to use 'client.mk' and '.mozconfig', added instructions
|
||||
to use system-installed NSS/NSPR libraries and added additional
|
||||
configuration information.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[randy] - Added information about using system-installed
|
||||
versions of the NSS libraries and added additional configuration
|
||||
versions of the NSS/NSPR libraries and added additional configuration
|
||||
information to the Firefox instructions.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
|
@ -4,17 +4,40 @@
|
||||
<!ENTITY % general-entities SYSTEM "../../general.ent">
|
||||
%general-entities;
|
||||
|
||||
<!ENTITY mozilla-download-http "http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
|
||||
<!ENTITY mozilla-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
|
||||
<!ENTITY mozilla-md5sum "ed54ad54b4b5de85c7916e7d1efa0ae3">
|
||||
<!ENTITY mozilla-size "29 MB">
|
||||
<!ENTITY mozilla-buildsize "620 MB">
|
||||
<!ENTITY mozilla-time "12.8 SBU">
|
||||
<!ENTITY mozilla-download-http "http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
|
||||
<!ENTITY mozilla-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
|
||||
<!ENTITY mozilla-md5sum "f1ad6adbbc0510eb76d352c94c801fac">
|
||||
<!ENTITY mozilla-size "30.4 MB">
|
||||
<!ENTITY mozilla-buildsize "575 MB">
|
||||
<!ENTITY mozilla-time "9.4 SBU">
|
||||
|
||||
<!ENTITY mozilla-enigmail-version "0.92.0">
|
||||
<!ENTITY mozilla-enigmail-md5sum "50c369ce6d6fcb2d275cd30319a601ff">
|
||||
<!ENTITY mozilla-ipc-version "1.1.3">
|
||||
<!ENTITY mozilla-ipc-md5sum "64ba4c6e3b52568468c4f6680ec7e679">
|
||||
<!--
|
||||
|
||||
BLFS Devs:
|
||||
|
||||
The information below is for the Enigmail and IPC downloads. Additionally,
|
||||
a makemake file is download because we cannot build Enigmail using an
|
||||
object directory without it. Informaiton about the Enigmail source to
|
||||
check for updates is located at http://enigmail.mozdev.org/source.html.
|
||||
|
||||
The link to the makemake file is near the end of the page in the section
|
||||
titled "Using OBJDIR when building Enigmail". Ensure you check the rev
|
||||
level of the link and update the "enigmail-makemake-version" entitity
|
||||
if necessary. In case you are wondering why the version has the question
|
||||
mark and "rev=" in it, it is because the complete URL is used in a command
|
||||
and it would extend past the 71 characters that PDF render is limited to.
|
||||
It should make sense after you see it rendered in the wget command.
|
||||
|
||||
-->
|
||||
|
||||
<!ENTITY mozilla-enigmail-version "0.93.0">
|
||||
<!ENTITY mozilla-ipc-version "1.1.3">
|
||||
<!ENTITY enigmail-makemake-version "?rev=1.3">
|
||||
<!ENTITY mozilla-enigmail-download "http://www.mozilla-enigmail.org/downloads/src/enigmail-&mozilla-enigmail-version;.tar.gz">
|
||||
<!ENTITY mozilla-ipc-download "http://www.mozilla-enigmail.org/downloads/src/ipc-&mozilla-ipc-version;.tar.gz">
|
||||
<!ENTITY enigmail-makemake-download "http://www.mozdev.org/source/browse/~checkout~/enigmail/src/makemake">
|
||||
<!ENTITY mozilla-enigmail-md5sum "cb7126705924cb7f0de205b4ff4e28b4">
|
||||
<!ENTITY mozilla-ipc-md5sum "64ba4c6e3b52568468c4f6680ec7e679">
|
||||
]>
|
||||
|
||||
<sect1 id="mozilla" xreflabel="Mozilla-&mozilla-version;">
|
||||
@ -47,11 +70,11 @@
|
||||
subprojects that aim to satisfy the needs of users who don't need the
|
||||
complete browser suite or prefer to have separate applications for
|
||||
browsing and e-mail. These subprojects are <ulink
|
||||
url="http://www.mozilla.org/products/firefox/">Mozilla Firefox</ulink>,
|
||||
url="http://www.mozilla.com/firefox/">Mozilla Firefox</ulink>,
|
||||
(a stand-alone browser based on the <application>Mozilla</application>
|
||||
source code) and <ulink
|
||||
url="http://www.mozilla.org/products/thunderbird/">Mozilla
|
||||
Thunderbird</ulink>, (a stand-alone mail client based on the
|
||||
url="http://www.mozilla.com/thunderbird/">Mozilla Thunderbird</ulink>,
|
||||
(a stand-alone mail/newsgroup client based on the
|
||||
<application>Mozilla</application> source code). The build instructions
|
||||
for these two applications are discussed in separate sections:</para>
|
||||
|
||||
@ -90,127 +113,289 @@
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
<para>Required patch: <ulink
|
||||
url="&patch-root;/mozilla-&mozilla-version;-gcc4-2.patch"/></para>
|
||||
url="&patch-root;/mozilla-&mozilla-version;-gcc4-1.patch"/></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Required patch: <ulink
|
||||
url="&patch-root;/mozilla-&mozilla-version;-gfx_fixes.patch"/></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Required patch (if using system-installed versions of
|
||||
<application>NSS</application> and <application>NSPR</application>):
|
||||
<ulink
|
||||
url="&patch-root;/mozilla-&mozilla-version;-system_nss-1.patch"/>
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>To enable the <application>Enigmail</application> extension to
|
||||
the <application>Mozilla</application> mail client, you'll need to
|
||||
download the two tarballs below. The <application>Enigmail</application>
|
||||
extension allows users to access the authentication and encryption
|
||||
features provided by the <application>GnuPG</application> package.</para>
|
||||
download the two tarballs and <command>makemake</command> file listed
|
||||
below. The <application>Enigmail</application> extension allows users to
|
||||
access the authentication and encryption features provided by the
|
||||
<application>GnuPG</application> package. The
|
||||
<application>Enigmail</application> extension will not operate correctly
|
||||
unless you have <xref linkend="gnupg"/> installed.</para>
|
||||
|
||||
<itemizedlist spacing='compact'>
|
||||
<listitem>
|
||||
<para><ulink
|
||||
url="http://downloads.mozdev.org/enigmail/src/enigmail-&mozilla-enigmail-version;.tar.gz"/>
|
||||
</para>
|
||||
<para><ulink url="&mozilla-enigmail-download;"/></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Download MD5 sum (Enigmail): &mozilla-enigmail-md5sum;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><ulink
|
||||
url="http://downloads.mozdev.org/enigmail/src/ipc-&mozilla-ipc-version;.tar.gz"/>
|
||||
</para>
|
||||
<para><ulink url="&mozilla-ipc-download;"/></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Download MD5 sum (IPC): &mozilla-ipc-md5sum;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><ulink
|
||||
url="&enigmail-makemake-download;&enigmail-makemake-version;"/></para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>The <command>makemake</command> file is an enhanced version that will
|
||||
be copied into the source tree to replace an existing file during the
|
||||
installation instructions. The instructions expect the file to be named
|
||||
<filename>mozilla-&mozilla-version;-enigmail_makemake</filename>. If you
|
||||
have <xref linkend="wget"/> installed, you can download and rename the file
|
||||
in one step using the following command:</para>
|
||||
|
||||
<screen><userinput>wget -O mozilla-&mozilla-version;-enigmail_makemake \
|
||||
&enigmail-makemake-download;\
|
||||
&enigmail-makemake-version;</userinput></screen>
|
||||
|
||||
<bridgehead renderas="sect3">Mozilla Dependencies</bridgehead>
|
||||
|
||||
<bridgehead renderas="sect4">Required</bridgehead>
|
||||
<para role="required"><xref linkend="zip"/>,
|
||||
<xref linkend="gtk2"/>,
|
||||
<xref linkend="libidl"/></para>
|
||||
<para role="required"><xref linkend="gtk2"/>,
|
||||
<xref linkend="libidl"/>, and
|
||||
<xref linkend="zip"/></para>
|
||||
|
||||
<bridgehead renderas="sect4">Recommended</bridgehead>
|
||||
<para role="recommended"><xref linkend="gnupg"/> (for the
|
||||
<application>Enigmail</application> extension)</para>
|
||||
<para>Note: <application>libjpeg</application> should have been installed
|
||||
before <application>GTK+</application> and should exist on your system. If
|
||||
for some reason you haven't installed <application>libjpeg</application>,
|
||||
you should remove the <option>--with-system-jpeg</option> option from the
|
||||
<filename>.mozconfig</filename> file created below.</para>
|
||||
|
||||
<bridgehead renderas="sect4">Recommended (if you will be installing any
|
||||
other package that utilizes NSS/NSPR, such as
|
||||
<application>Firefox</application> or
|
||||
<application>Thunderbird</application>)</bridgehead>
|
||||
<para role="recommended"><xref linkend="nss"/></para>
|
||||
|
||||
<bridgehead renderas="sect4">Optional</bridgehead>
|
||||
<para role="optional"><xref linkend="libjpeg"/>,
|
||||
<xref linkend="unzip"/>,
|
||||
<para role="optional"><xref linkend="unzip"/>,
|
||||
<xref linkend="gnome-vfs"/> (to build the gnomevfs extension),
|
||||
<xref linkend="libart_lgpl"/>,
|
||||
<xref linkend="libart_lgpl"/>, and
|
||||
<xref linkend="heimdal"/> or <xref linkend="mitkrb"/>
|
||||
(for the GSSAPI libraries to build the negotiateauth extension),
|
||||
<xref linkend="doxygen"/>,
|
||||
<ulink url="http://xprint.mozdev.org/">Xprint</ulink>,
|
||||
<ulink url="http://perens.com/FreeSoftware/">Electric Fence</ulink></para>
|
||||
(for the GSSAPI libraries to build the negotiateauth extension)</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Mozilla</title>
|
||||
|
||||
<para>The configuration of <application>Mozilla</application> is
|
||||
accomplished by creating a <filename>.mozconfig</filename> file containing
|
||||
the desired configuration options. A default <filename>.mozconfig</filename>
|
||||
file is created below. To see the entire list of available configuration
|
||||
options (and an abbreviated description of each one), issue
|
||||
<command>./configure --help</command>. Additional information can also be
|
||||
found below in the section titled <xref linkend="add-mozconfig"/>. If you
|
||||
are going to use system-installed versions of the
|
||||
<application>NSS</application> and <application>NSPR</application>
|
||||
libraries, ensure you uncomment the two lines at the bottom of the file. If
|
||||
you would prefer to download the file instead of creating it by typing or
|
||||
cut-and-pasting, you can find it at <ulink
|
||||
url="http://anduin.linuxfromscratch.org/files/BLFS/mozilla-&mozilla-version;-mozconfig"/>
|
||||
(the file must be installed in the root of the source tree
|
||||
<filename class='directory'>mozilla</filename> directory, and named
|
||||
<filename>.mozconfig</filename>). Create the file by issuing the following
|
||||
command:</para>
|
||||
|
||||
<screen><userinput>cat > .mozconfig << "EOF"
|
||||
<literal># Options for client.mk
|
||||
|
||||
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../mozilla-build
|
||||
|
||||
# Options for 'configure' (same as command-line options)
|
||||
|
||||
# Mandatory options
|
||||
ac_add_options --enable-application=suite
|
||||
ac_add_options --prefix=/usr
|
||||
|
||||
# Options for system-installed software
|
||||
ac_add_options --with-system-zlib
|
||||
ac_add_options --with-system-png
|
||||
ac_add_options --with-system-jpeg
|
||||
|
||||
# Options in all Mozilla-family builds
|
||||
ac_add_options --enable-official-branding
|
||||
ac_add_options --enable-strip
|
||||
ac_add_options --disable-tests
|
||||
ac_add_options --disable-installer
|
||||
ac_add_options --disable-accessibility
|
||||
|
||||
# Options used for graphics settings in Mozilla Suite (Not Seamonkey)
|
||||
ac_add_options --enable-default-toolkit=gtk2
|
||||
ac_add_options --enable-xft
|
||||
ac_add_options --disable-freetype2
|
||||
|
||||
# Options used just for Mozilla Suite (Not Seamonkey)
|
||||
ac_add_options --enable-optimize
|
||||
ac_add_options --disable-debug
|
||||
ac_add_options --disable-logging
|
||||
ac_add_options --enable-crypto
|
||||
ac_add_options --enable-extensions=all
|
||||
|
||||
# Options used just for Mozilla Suite
|
||||
ac_add_options --enable-ldap
|
||||
ac_add_options --enable-calendar
|
||||
|
||||
# Options used for system-installed NSS/NSPR
|
||||
#ac_add_options --with-system-nspr
|
||||
#ac_add_options --with-system-nss</literal>
|
||||
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>If you have system-installed Network Security Services (NSS) and
|
||||
Netscape Portable Runtime (NSPR) libraries and you uncommented the
|
||||
appropriate lines in the <filename>.mozconfig</filename> file to utilize
|
||||
them, apply the following patch:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../mozilla-&mozilla-version;-system_nss-1.patch</userinput></screen>
|
||||
|
||||
<para>Compile <application>Mozilla</application> by running the
|
||||
following commands:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../mozilla-&mozilla-version;-gcc4-2.patch &&
|
||||
export MOZILLA_OFFICIAL="1" &&
|
||||
<screen><userinput>export MOZILLA_OFFICIAL="1" &&
|
||||
export BUILD_OFFICIAL="1" &&
|
||||
export MOZ_CO_PROJECT="suite" &&
|
||||
./configure --prefix=/usr \
|
||||
--with-default-mozilla-five-home=/usr/lib/mozilla \
|
||||
--with-system-zlib \
|
||||
--with-system-png \
|
||||
--enable-application=suite \
|
||||
--enable-default-toolkit=gtk2 \
|
||||
--enable-extensions=all \
|
||||
--enable-crypto \
|
||||
--enable-xft \
|
||||
--enable-xinerama \
|
||||
--enable-optimize \
|
||||
--enable-reorder \
|
||||
--enable-strip \
|
||||
--enable-cpp-rtti \
|
||||
--enable-calendar \
|
||||
--disable-freetype2 \
|
||||
--disable-accessibility \
|
||||
--disable-debug \
|
||||
--disable-tests \
|
||||
--disable-logging \
|
||||
--disable-pedantic \
|
||||
--disable-installer &&
|
||||
make</userinput></screen>
|
||||
|
||||
<para>You should add the <option>--with-system-jpeg</option> switch
|
||||
to the <command>configure</command> script if you have
|
||||
<application>libjpeg</application> installed.</para>
|
||||
patch -Np1 -i ../mozilla-&mozilla-version;-gfx_fixes-1.patch &&
|
||||
patch -Np1 -i ../mozilla-&mozilla-version;-gcc4-1.patch &&
|
||||
|
||||
<para>If you're building the <application>Mozilla</application> mail
|
||||
and news clients and plan to install the <application>Enigmail</application>
|
||||
extension, execute the following steps:</para>
|
||||
make -f client.mk build</userinput></screen>
|
||||
|
||||
<para>If you're building the <application>Mozilla</application>
|
||||
mail/newsgroup client and plan to install the
|
||||
<application>Enigmail</application> extension, issue the following
|
||||
commands:</para>
|
||||
|
||||
<screen><userinput>tar -xf ../enigmail-&mozilla-enigmail-version;.tar.gz -C extensions &&
|
||||
tar -xf ../ipc-&mozilla-ipc-version;.tar.gz -C extensions &&
|
||||
build/autoconf/make-makefile extensions/ipc extensions/enigmail &&
|
||||
make -C extensions/ipc &&
|
||||
make -C extensions/enigmail</userinput></screen>
|
||||
|
||||
<para>Install <application>Mozilla</application> (as the
|
||||
<systemitem class="username">root user</systemitem>) as follows:</para>
|
||||
install -v -m755 -b ../mozilla-&mozilla-version;-enigmail_makemake \
|
||||
extensions/ipc/makemake &&
|
||||
install -v -m755 -b ../mozilla-&mozilla-version;-enigmail_makemake \
|
||||
extensions/enigmail/makemake &&
|
||||
|
||||
cd extensions/ipc &&
|
||||
./makemake -r &&
|
||||
|
||||
cd ../enigmail &&
|
||||
./makemake -r &&
|
||||
|
||||
cd ../.. &&
|
||||
make -C ../mozilla-build/extensions/ipc &&
|
||||
make -C ../mozilla-build/extensions/enigmail &&
|
||||
make -C ../mozilla-build/extensions/enigmail xpi</userinput></screen>
|
||||
|
||||
<para>Install <application>Mozilla</application> by issuing the following
|
||||
commands as the <systemitem class="username">root</systemitem> user:</para>
|
||||
|
||||
<screen role="root"><userinput>make -f client.mk install &&
|
||||
|
||||
install -v -m644 ../mozilla-build/dist/public/ldap-private/* \
|
||||
/usr/include/mozilla-&mozilla-version;/ldap &&
|
||||
|
||||
install -v -m755 -d /usr/lib/mozilla-&mozilla-version;/defaults/isp/US &&
|
||||
install -v -m644 mailnews/base/ispdata/movemail.rdf \
|
||||
/usr/lib/mozilla-&mozilla-version;/defaults/isp &&
|
||||
ln -v -s ../movemail.rdf /usr/lib/mozilla-&mozilla-version;/defaults/isp/US &&
|
||||
|
||||
<screen role="root"><userinput>make install &&
|
||||
install -v -d -m755 /usr/include/mozilla-&mozilla-version;/nss &&
|
||||
cp -v -Lf dist/private/nss/*.h dist/public/nss/*.h \
|
||||
/usr/include/mozilla-&mozilla-version;/nss &&
|
||||
ln -v -nsf mozilla-&mozilla-version; /usr/include/mozilla &&
|
||||
if [ -d /usr/lib/mozilla/plugins ]; then
|
||||
if [ -f /usr/lib/mozilla/plugins/libnullplugin.so ]; then
|
||||
rm -vf /usr/lib/mozilla/plugins/libnullplugin.so
|
||||
fi
|
||||
mv -v /usr/lib/mozilla/plugins/* /usr/lib/mozilla-&mozilla-version;/plugins
|
||||
rm -v -rf /usr/lib/mozilla
|
||||
fi &&
|
||||
ln -v -nsf mozilla-&mozilla-version; /usr/lib/mozilla</userinput></screen>
|
||||
|
||||
<para>If you're installing the <application>Enigmail</application>
|
||||
extension, issue the following commands as the
|
||||
ln -v -nsf mozilla-&mozilla-version; /usr/lib/mozilla &&
|
||||
ln -v -nsf mozilla-&mozilla-version; /usr/include/mozilla</userinput></screen>
|
||||
|
||||
<para>If you built <application>Mozilla</application> utilizing
|
||||
system-installed NSS and NSPR libraries, the
|
||||
<filename>mozilla-ns*.pc</filename> <application>pkgconfig</application>
|
||||
files need to be modified. Issue the following command as the
|
||||
<systemitem class="username">root</systemitem> user:</para>
|
||||
|
||||
<screen role="root"><userinput>make -C extensions/ipc install &&
|
||||
make -C extensions/enigmail install</userinput></screen>
|
||||
<screen role="root"><userinput>sed -i 's|/mozilla-&mozilla-version;||' /usr/lib/pkgconfig/mozilla-ns*.pc</userinput></screen>
|
||||
|
||||
<para>If you did <emphasis role="strong">NOT</emphasis> build
|
||||
<application>Mozilla</application> utilizing system-installed NSS and
|
||||
NSPR libraries, issue the following commands as the
|
||||
<systemitem class="username">root</systemitem> user to install the NSS
|
||||
interface headers:</para>
|
||||
|
||||
<screen role="root"><userinput>install -v -m755 -d /usr/include/mozilla-&mozilla-version;/nss &&
|
||||
cp -v -Lf ../mozilla-build/dist/{private,public}/nss/*.h \
|
||||
/usr/include/mozilla-&mozilla-version;/nss</userinput></screen>
|
||||
|
||||
<para>If you built the <application>Enigmail</application> extension,
|
||||
issue the following commands as the <systemitem
|
||||
class="username">root</systemitem> user to install the
|
||||
<filename>.xpi</filename> file into the
|
||||
<filename class='directory'>/usr/lib/mozilla-&mozilla-version;</filename>
|
||||
directory:</para>
|
||||
|
||||
<screen role="root"><userinput>install -v -m755 -d /usr/lib/mozilla-&mozilla-version;/xpi_store &&
|
||||
install -v -m644 ../mozilla-build/dist/bin/enigmail-&mozilla-enigmail-version;-*.xpi \
|
||||
/usr/lib/mozilla-&mozilla-version;/xpi_store</userinput></screen>
|
||||
|
||||
<para>There are two methods you can use to install the
|
||||
<application>Enigmail</application> extension. Both are shown here and
|
||||
provide the same functionality. The first method must be accomplished
|
||||
now (before the object directory is removed) and uses the conventional
|
||||
<command>make install</command> command to install the
|
||||
<application>Enigmail</application> files straight from the distribution
|
||||
directory of the object directory. An alternate method is shown as it
|
||||
installs using the <filename class='extension'>.xpi</filename> file
|
||||
created earlier and can be done later (at any time you desire) as the
|
||||
file used to install <application>Enigmail</application> was copied into
|
||||
<filename
|
||||
class='directory'>/usr/lib/mozilla-&mozilla-version;/xpi_store</filename>
|
||||
in the previous step. This method can be used to install any
|
||||
downloaded <application>Mozilla</application> extension distributed in a
|
||||
<filename class='extension'>.xpi</filename> file. There are many
|
||||
extensions available for <application>Mozilla</application>. A list
|
||||
containing many of them can be found at
|
||||
<ulink url="http://extensionroom.mozdev.org/"/>.</para>
|
||||
|
||||
<para>If you want to install the <application>Enigmail</application>
|
||||
extension now, issue the following commands as the
|
||||
<systemitem class="username">root</systemitem> user:</para>
|
||||
|
||||
<screen role="root"><userinput>make -C ../mozilla-build/extensions/ipc install &&
|
||||
make -C ../mozilla-build/extensions/enigmail install</userinput></screen>
|
||||
|
||||
<para>To install an extension from a created or download
|
||||
<filename class='extension'>.xpi</filename> file, you simply need to
|
||||
<quote>open</quote> the <filename class='extension'>.xpi</filename> file
|
||||
using the <quote>Open File</quote> option of the <quote>File</quote>
|
||||
menu of the Navigator window. You can browse to find the file (for example,
|
||||
the <application>Enigmail</application>
|
||||
<filename class='extension'>.xpi</filename> file is located in
|
||||
<filename
|
||||
class='directory'>/usr/lib/mozilla-&mozilla-version;/xpi_store</filename>,
|
||||
select it, then follow the prompts to install the extension.</para>
|
||||
|
||||
<!-- Commenting this out as there really is no need to put the Mozilla
|
||||
Suite versions of NSS/NSPR in a system-wide location when there
|
||||
is now a BLFS package that does this.
|
||||
|
||||
<para>Some libraries, including the Netscape Portable Runtime (NSPR) and
|
||||
Network Security Services (NSS) libraries, installed by
|
||||
@ -226,6 +411,13 @@ do
|
||||
ln -v -sf ../$i /usr/lib/mozilla-&mozilla-version;/
|
||||
done</userinput></screen>
|
||||
|
||||
-->
|
||||
|
||||
<!-- Commenting this out for now, as I believe this is only necessary
|
||||
for the binary versions of Mozilla. I've built this and had many
|
||||
system users access Mozilla simultaneously without having to do
|
||||
the steps shown here.
|
||||
|
||||
<para>Create the required component registries to enable multi-user
|
||||
installs. These steps should be preformed by the <systemitem
|
||||
class="username">root</systemitem> user each time a
|
||||
@ -240,81 +432,93 @@ export MOZILLA_FIVE_HOME="$PWD" &&
|
||||
./regchrome &&
|
||||
touch `find . -name *.rdf`</userinput></screen>
|
||||
|
||||
-->
|
||||
|
||||
<para>Unset the build variables from the unprivileged user's
|
||||
environment:</para>
|
||||
|
||||
<screen><userinput>unset MOZILLA_OFFICIAL &&
|
||||
unset BUILD_OFFICIAL</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>You should run <command>/usr/bin/mozilla</command> once as the
|
||||
<systemitem class="username">root</systemitem> user (or any user with
|
||||
write privileges) to create some necessary additional files in the
|
||||
<filename class='directory'>/usr</filename> hierarchy.</para>
|
||||
<filename class='directory'>/usr</filename> hierarchy. Also do this
|
||||
each time you install additional extensions.</para>
|
||||
</note>
|
||||
|
||||
<para>Lastly, unset the build variables from the unprivileged user's
|
||||
environment:</para>
|
||||
</sect2>
|
||||
|
||||
<screen><userinput>unset MOZILLA_OFFICIAL &&
|
||||
unset BUILD_OFFICIAL &&
|
||||
unset MOZ_CO_PROJECT</userinput></screen>
|
||||
<sect2 role="commands" id="add-mozconfig"
|
||||
xreflabel="Additional .mozconfig Options">
|
||||
|
||||
<title>Additional .mozconfig Options</title>
|
||||
|
||||
<para>Information about some of the additional options which can be added
|
||||
to the <filename>.mozconfig</filename> configuration file is shown below.
|
||||
Note that this is just a few of the options. You may wish to run
|
||||
<command>./configure --help</command> and review each of the listed options
|
||||
to discover what affect they have on the build. Feel free to add or remove
|
||||
options to tailor the build to your desires. Listed below are some common
|
||||
options not in the default <filename>.mozconfig</filename> file but can be
|
||||
added in order to have the described effect on the Mozilla compile.</para>
|
||||
|
||||
<para><option>ac_add_options --enable-elf-dynstr-gc</option>: Removes
|
||||
un-referenced strings from ELF shared objects generated during the build.
|
||||
Note that this option breaks the build on alpha.</para>
|
||||
|
||||
<para><option>ac_add_options --disable-mailnews</option>: Disables the mail
|
||||
and news clients.</para>
|
||||
|
||||
<para><option>ac_add_options --disable-ldap</option>: Disables LDAP support,
|
||||
recommended if mail is disabled.</para>
|
||||
|
||||
<para><option>ac_add_options --enable-xterm-updates</option>: Displays the
|
||||
current command in the <command>xterm</command> window title during the
|
||||
compilation.</para>
|
||||
|
||||
<para><option>ac_add_options --enable-plaintext-editor-only</option>:
|
||||
Disables support for HTML editing. Do not use this switch if you are
|
||||
building the mail-news component.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="commands">
|
||||
<title>Optional Extra Switches</title>
|
||||
<title>.mozconfig Option Explanations</title>
|
||||
|
||||
<para>You may wish to run <command>./configure --help</command> and review
|
||||
each of the listed options to discover what affect they have on the build.
|
||||
Feel free to add or remove options to tailor the build to your desires.
|
||||
Listed below are some common options not listed above but can be added to
|
||||
the <command>configure</command> command in order to have the described
|
||||
effect on the <application>Mozilla</application> compile.</para>
|
||||
<para>To simplify reading the options below, they are labeled without
|
||||
<parameter>ac_add_options</parameter> inserted at the beginning of the
|
||||
option.</para>
|
||||
|
||||
<para><option>--with-system-jpeg</option>: Uses the system-installed copy
|
||||
of <application>libjpeg</application> instead of the bundled copy.</para>
|
||||
<para><parameter>mk_add_options
|
||||
MOZ_OBJDIR=@TOPSRCDIR@/../mozilla-build</parameter>: Creates an object
|
||||
directory and specifies to build the package in that directory. If desired,
|
||||
modify the location of the object directory to a directory inside the
|
||||
source tree by removing <quote>../</quote> from the line.</para>
|
||||
|
||||
<para><option>--enable-elf-dynstr-gc</option>: Removes un-referenced
|
||||
strings from ELF shared objects generated during the build. Note that this
|
||||
option breaks the build on alpha.</para>
|
||||
<para><parameter>--enable-application=suite</parameter>: Identifies the
|
||||
build as a <application>Mozilla</application> suite build.</para>
|
||||
|
||||
<para><option>--disable-mailnews</option>: Disables the mail and news
|
||||
clients.</para>
|
||||
<para><parameter>--with-system-zlib --with-system-png
|
||||
--with-system-jpeg</parameter>: Uses the system-installed versions of these
|
||||
packages.</para>
|
||||
|
||||
<para><option>--disable-ldap</option>: Disables LDAP support, recommended
|
||||
if mail is disabled.</para>
|
||||
<para><parameter>--enable-official-branding</parameter>: Uses the official
|
||||
Mozilla logos and icons in the built binaries. Due to license restrictions,
|
||||
you may not distribute binaries created using this option.</para>
|
||||
|
||||
<para><option>--enable-xterm-updates</option>: Displays the current command
|
||||
in the <command>xterm</command> window title during the compilation.</para>
|
||||
|
||||
<para><option>--enable-plaintext-editor-only</option>: Disables support
|
||||
for HTML editing. Do not use this switch if you are building the mail-news
|
||||
component.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="commands">
|
||||
<title>Command Explanations</title>
|
||||
|
||||
<para><command>export MOZILLA_OFFICIAL="1";
|
||||
export BUILD_OFFICIAL="1"</command>: Set some variables that affect what and
|
||||
how the package is built. These two exports specify a distribution is being
|
||||
built.</para>
|
||||
|
||||
<para><parameter>--with-default-mozilla-five-home=/usr/lib/mozilla</parameter>:
|
||||
Sets the default value for <envar>MOZILLA_FIVE_HOME</envar>.</para>
|
||||
|
||||
<para><parameter>--with-system-zlib --with-system-png </parameter>: Use the
|
||||
system-installed versions of these packages.</para>
|
||||
|
||||
<para><parameter>--enable-application=suite</parameter>: Identifies the build
|
||||
as a <application>Mozilla</application> suite build.</para>
|
||||
|
||||
<para><parameter>--enable-default-toolkit=gtk2</parameter>: Use the
|
||||
GTK2 toolkit for graphics rendering.</para>
|
||||
<para><parameter>--enable-default-toolkit=gtk2 --enable-xft
|
||||
--disable-freetype2</parameter>: Use the GTK2 toolkit for graphics
|
||||
rendering and XFT (automatically pulls in the
|
||||
<application>FreeType</application> libraries) for font rendering.</para>
|
||||
|
||||
<para><parameter>--enable-extensions=all</parameter>: Enables all available
|
||||
extensions. If you want, you can disable any or all extensions other than the
|
||||
browser by changing this switch to
|
||||
extensions. If you want, you can disable any or all extensions other than
|
||||
the browser by changing this switch to
|
||||
<option>--enable-extensions="default,-venkman,-inspector,..."</option>.
|
||||
For a short description of the various extensions available with the
|
||||
<application>Mozilla</application> source, see
|
||||
<ulink
|
||||
<application>Mozilla</application> source, see <ulink
|
||||
url="http://linuxfromscratch.org/~tushar/downloads/mozilla-extensions.txt"/>.
|
||||
</para>
|
||||
|
||||
@ -322,11 +526,7 @@ unset MOZ_CO_PROJECT</userinput></screen>
|
||||
Security Manager to enable SSL connections.</para>
|
||||
|
||||
<para><parameter>--enable-calendar</parameter>: Builds the calendar
|
||||
application. Removed this parameter if you don't wish to build it.</para>
|
||||
|
||||
<para><parameter>--enable-xft; --disable-freetype2</parameter>: Enable Xft
|
||||
support which automatically pulls in the <application>FreeType</application>
|
||||
libraries.</para>
|
||||
application. Remove this parameter if you don't wish to build it.</para>
|
||||
|
||||
<para><parameter>--enable-xinerama; --enable-optimize; --enable-reorder;
|
||||
--enable-strip; --enable-cpp-rtti --disable-accessibility; --disable-debug;
|
||||
@ -336,19 +536,47 @@ unset MOZ_CO_PROJECT</userinput></screen>
|
||||
options. More information on them, and many other available options, can be
|
||||
found by running <command>./configure --help</command>.</para>
|
||||
|
||||
<para><command>install -d /usr/include/mozilla-&mozilla-version;/nss;
|
||||
cp -Lf ...</command>: Copy the NSS interface headers that
|
||||
are not copied by <command>make install</command>.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="commands">
|
||||
<title>Command Explanations</title>
|
||||
|
||||
<para><command>export MOZILLA_OFFICIAL="1"
|
||||
export BUILD_OFFICIAL="1"</command>: Sets some variables that affect what
|
||||
and how the package is built. These two exports specify a distribution is
|
||||
being built.</para>
|
||||
|
||||
<para><command>make -f client.mk ...</command>: Mozilla products are
|
||||
packaged to allow the use of a configuration file which can be used to
|
||||
pass the configuration settings to the <command>configure</command>
|
||||
command. <command>make</command> uses the <filename>client.mk</filename>
|
||||
file to get initial configuration and setup parameters, then depending on
|
||||
the target parameter (<parameter>build</parameter> or
|
||||
<parameter>install</parameter>), either runs the
|
||||
<command>configure</command> script and compiles the package or installs
|
||||
the package.</para>
|
||||
|
||||
<para><command>./makemake -r</command>: This command is used to recursively
|
||||
create <filename>Makefile</filename>s in the current directory.</para>
|
||||
|
||||
<para><command>make -C ... xpi</command>: This command builds the
|
||||
<application>Enigmail</application>
|
||||
<filename class='extension'>.xpi</filename> file which can be used to
|
||||
install <application>Enigmail</application>.</para>
|
||||
|
||||
<para><command>install .../movemail.rdf ...</command>: This
|
||||
command is used to install a file inadvertently left out of the
|
||||
installation script.</para>
|
||||
|
||||
<para><command>if [ -d /usr/lib/mozilla/plugins ] ... fi</command>: Some
|
||||
applications may have already installed <application>Mozilla</application>
|
||||
plugins. This set of commands move any existing plugins to the newly created
|
||||
plugin directory, then removes the existing
|
||||
plugins. This set of commands moves any existing plugins to the newly
|
||||
created plugin directory, then removes the existing
|
||||
<filename class='directory'>/usr/lib/mozilla</filename> directory.</para>
|
||||
|
||||
<para><command>ln -nsf mozilla-&mozilla-version; ...</command>:
|
||||
<application>Mozilla</application> installs headers and libraries in version
|
||||
specific directories. These commands makes symbolic links so that
|
||||
<application>Mozilla</application> installs headers and libraries in
|
||||
version specific directories. These commands makes symbolic links so that
|
||||
applications depending on <application>Mozilla</application> (such as
|
||||
<application>OpenOffice</application>, <application>Galeon</application>,
|
||||
etc.) don't need to know which version of <application>Mozilla</application>
|
||||
@ -362,8 +590,8 @@ unset MOZ_CO_PROJECT</userinput></screen>
|
||||
<para>No specific configuration is required as long as the
|
||||
<command>mozilla</command> script is in the user's path. If
|
||||
<application>Mozilla</application> is installed in a non-standard location,
|
||||
then make a symlink to the <command>mozilla</command> script from
|
||||
<filename class="directory">/usr/bin</filename>.</para>
|
||||
then make a symlink to the <command>mozilla</command> script in the
|
||||
<filename class="directory">/usr/bin</filename> directory.</para>
|
||||
|
||||
<para>Many applications look for <command>netscape</command> when they need
|
||||
to open a browser. You may make the following symlink for convenience (as
|
||||
@ -381,18 +609,42 @@ unset MOZ_CO_PROJECT</userinput></screen>
|
||||
<screen role="root"><userinput>ln -v -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so \
|
||||
/usr/lib/mozilla-&mozilla-version;/plugins</userinput></screen>
|
||||
|
||||
<para>Along with using the <quote>Preferences</quote> menu to configure
|
||||
<application>Mozilla</application>'s options and preferences to suit
|
||||
individual tastes, finer grain control of many options is only available
|
||||
using a tool not available from the general menu system. To access this
|
||||
tool, you'll need to open a Navigator window and enter
|
||||
<systemitem role='url'>about:config</systemitem> in the
|
||||
address bar. This will display a list of the configuration preferences and
|
||||
information related to each one. You can use the <quote>Filter:</quote> bar
|
||||
to enter search criteria and narrow down the listed items. Changing a
|
||||
preference can be done using two methods. One, if the preference has a
|
||||
boolean value (True/False), simply double-click on the preference to toggle
|
||||
the value and two, for other preferences simply right-click on the desired
|
||||
line, choose <quote>Modify</quote> from the menu and change the value.
|
||||
Creating new preference items is accomplished in the same way, except
|
||||
choose <quote>New</quote> from the menu and provide the desired data into
|
||||
the fields when prompted.</para>
|
||||
|
||||
<tip>
|
||||
<para>There is a multitude of configuration parameters you can tweak to
|
||||
customize <application>Mozilla</application>. A very extensive and
|
||||
up-to-date list of these parameters can be found at <ulink
|
||||
url="http://preferential.mozdev.org/preferences.html"/>.</para>
|
||||
</tip>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="content">
|
||||
<title>Contents</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed Program</segtitle>
|
||||
<segtitle>Installed Programs</segtitle>
|
||||
<segtitle>Installed Libraries</segtitle>
|
||||
<segtitle>Installed Directories</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>mozilla</seg>
|
||||
<seg>mozilla and mozilla-config</seg>
|
||||
<seg>Numerous libraries, browser, and email/newsgroup components,
|
||||
plugins, extensions, and helper modules installed in <filename
|
||||
class='directory'>/usr/lib/mozilla-&mozilla-version;</filename></seg>
|
||||
|
Loading…
Reference in New Issue
Block a user