2004-06-14 04:45:42 +08:00
|
|
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
2007-04-05 03:42:53 +08:00
|
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
2004-06-14 04:45:42 +08:00
|
|
|
<!ENTITY % general-entities SYSTEM "../../general.ent">
|
|
|
|
%general-entities;
|
|
|
|
|
2010-02-19 06:22:44 +08:00
|
|
|
<!ENTITY firefox-download-http "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
|
|
|
|
<!ENTITY firefox-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
|
2011-12-23 02:06:11 +08:00
|
|
|
<!ENTITY firefox-md5sum "7cf2bd379792a9b232267c6a79680566">
|
2011-12-20 22:14:09 +08:00
|
|
|
<!ENTITY firefox-size "70.8 MB">
|
2011-12-21 02:55:26 +08:00
|
|
|
<!ENTITY firefox-buildsize "3 GB (33 MB installed)">
|
|
|
|
<!ENTITY firefox-time "24 SBU (or 0.3 SBU if you're building against
|
2011-11-30 00:24:22 +08:00
|
|
|
an installed Xulrunner)">
|
2004-06-14 04:45:42 +08:00
|
|
|
]>
|
|
|
|
|
2004-07-15 19:52:34 +08:00
|
|
|
<sect1 id="firefox" xreflabel="Firefox-&firefox-version;">
|
2005-05-21 16:19:50 +08:00
|
|
|
<?dbhtml filename="firefox.html" ?>
|
|
|
|
|
|
|
|
<sect1info>
|
|
|
|
<othername>$LastChangedBy$</othername>
|
|
|
|
<date>$Date$</date>
|
|
|
|
</sect1info>
|
|
|
|
|
|
|
|
<title>Firefox-&firefox-version;</title>
|
|
|
|
|
|
|
|
<indexterm zone="firefox">
|
|
|
|
<primary sortas="a-Firefox">Firefox</primary>
|
|
|
|
</indexterm>
|
|
|
|
|
|
|
|
<sect2 role="package">
|
|
|
|
<title>Introduction to Firefox</title>
|
|
|
|
|
|
|
|
<para><application>Firefox</application> is a stand-alone browser
|
|
|
|
based on the <application>Mozilla</application> codebase.</para>
|
|
|
|
|
2011-11-28 05:41:28 +08:00
|
|
|
&lfs70_checked;
|
2010-08-07 06:25:46 +08:00
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
|
|
<itemizedlist spacing="compact">
|
|
|
|
<listitem>
|
|
|
|
<para>Download (HTTP): <ulink url="&firefox-download-http;"/></para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>Download (FTP): <ulink url="&firefox-download-ftp;"/></para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>Download MD5 sum: &firefox-md5sum;</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>Download size: &firefox-size;</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>Estimated disk space required: &firefox-buildsize;</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>Estimated build time: &firefox-time;</para>
|
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
|
2011-12-21 04:55:31 +08:00
|
|
|
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
|
|
|
<itemizedlist spacing="compact">
|
|
|
|
<listitem>
|
2012-01-16 21:56:35 +08:00
|
|
|
<para>Required patch:
|
2012-01-11 22:22:48 +08:00
|
|
|
<ulink
|
2011-12-21 04:55:31 +08:00
|
|
|
url="&patch-root;/firefox-&firefox-version;-libpng-1.5-1.patch"/></para>
|
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
<bridgehead renderas="sect3">Firefox Dependencies</bridgehead>
|
|
|
|
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
2011-11-30 21:59:55 +08:00
|
|
|
<para role="required"><xref linkend="alsa-lib"/>, <xref linkend="gtk2"/>,
|
2011-12-24 21:43:12 +08:00
|
|
|
<xref linkend="zip"/> and <xref linkend="unzip"/>.</para>
|
2005-05-21 16:19:50 +08:00
|
|
|
|
2011-11-28 05:41:28 +08:00
|
|
|
<para>Note: <application>libjpeg</application> and
|
|
|
|
<application>libpng</application> (patched for apng support) should have
|
|
|
|
been installed before <application>gdk-pixbuf</application> and should
|
2011-12-21 02:55:26 +08:00
|
|
|
exist on your system. If for some strange reason you haven't installed
|
2011-11-28 05:41:28 +08:00
|
|
|
them, you should remove the <option>--with-system-jpeg</option> and
|
|
|
|
<option>--with-system-png</option> options from the
|
2011-01-08 05:25:26 +08:00
|
|
|
<filename>mozconfig</filename> file created below.</para>
|
2005-12-25 01:34:04 +08:00
|
|
|
|
2011-11-30 21:59:55 +08:00
|
|
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
2011-12-02 02:17:33 +08:00
|
|
|
<para role="recommended"><xref linkend="yasm"/> or
|
2011-12-03 01:02:01 +08:00
|
|
|
<xref linkend="libvpx"/> (to allow <application>Firefox</application> to
|
|
|
|
play webm videos).</para>
|
2011-11-30 21:59:55 +08:00
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
2009-03-12 21:37:30 +08:00
|
|
|
<para role="optional"><xref linkend="dbus-glib"/>,
|
2011-11-28 05:41:28 +08:00
|
|
|
<xref linkend="startup-notification"/>, <xref linkend="sqlite"/>,
|
2012-01-16 21:01:37 +08:00
|
|
|
<ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>,
|
2012-01-16 22:56:53 +08:00
|
|
|
<ulink url="http://libevent.org/">Libevent</ulink>,
|
2011-11-30 18:45:20 +08:00
|
|
|
<xref linkend="doxygen"/>, <xref linkend="gnome-vfs"/> and
|
|
|
|
<xref linkend="libgnomeui"/> (for gnome integration),
|
|
|
|
<xref linkend="libnotify"/>, <xref linkend="nspr"/>, <xref linkend="nss"/>,
|
|
|
|
<xref linkend="xulrunner"/> (linking against an installed xulrunner makes
|
|
|
|
Firefox about 32 MB smaller, which is trivial compared to the size of
|
2011-12-26 00:10:41 +08:00
|
|
|
xulrunner), <xref linkend="wireless_tools"/>,
|
2011-11-28 05:41:28 +08:00
|
|
|
<ulink url="http://www.valgrind.org/">Valgrind</ulink> (only for testing
|
|
|
|
the jemalloc code) and <xref linkend="wget"/></para>
|
2005-05-21 16:19:50 +08:00
|
|
|
|
2006-04-11 02:39:55 +08:00
|
|
|
<para condition="html" role="usernotes">User Notes:
|
|
|
|
<ulink url="&blfs-wiki;/firefox"/></para>
|
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 role="installation">
|
|
|
|
<title>Installation of Firefox</title>
|
|
|
|
|
2005-12-25 01:34:04 +08:00
|
|
|
<para>The configuration of <application>Firefox</application> is
|
2011-01-08 05:25:26 +08:00
|
|
|
accomplished by creating a <filename>mozconfig</filename> file containing
|
|
|
|
the desired configuration options. A default <filename>mozconfig</filename>
|
2005-12-25 01:34:04 +08:00
|
|
|
is created below. To see the entire list of available configuration options
|
|
|
|
(and an abbreviated description of each one), issue
|
2011-11-29 22:51:04 +08:00
|
|
|
<command>./configure --help</command>. You may also wish to review the
|
|
|
|
entire file and uncomment any other desired options. Create the file by
|
|
|
|
issuing the following command:</para>
|
2005-12-25 01:34:04 +08:00
|
|
|
|
2011-12-26 07:09:21 +08:00
|
|
|
<screen><?dbfo keep-together="auto"?><userinput>patch -p1 < ../firefox-&firefox-version;-libpng-1.5-1.patch &&
|
2011-12-21 04:55:31 +08:00
|
|
|
cat > mozconfig << "EOF"
|
2011-11-29 22:51:04 +08:00
|
|
|
# If you have a multicore machine you can speed up the build by running
|
2011-11-28 05:41:28 +08:00
|
|
|
# several jobs at once, but if you have a single core, delete this line:
|
|
|
|
mk_add_options MOZ_MAKE_FLAGS="-j4"
|
2009-03-12 21:37:30 +08:00
|
|
|
|
2011-11-30 21:59:55 +08:00
|
|
|
# If you have installed Yasm delete this option:
|
|
|
|
ac_add_options --disable-webm
|
|
|
|
|
2011-11-30 18:45:20 +08:00
|
|
|
# If you have installed DBus-Glib delete this option:
|
2009-09-25 11:54:31 +08:00
|
|
|
ac_add_options --disable-dbus
|
2009-03-12 21:37:30 +08:00
|
|
|
|
2011-11-30 18:45:20 +08:00
|
|
|
# If you have installed wireless-tools delete this option:
|
2010-02-18 14:44:20 +08:00
|
|
|
ac_add_options --disable-necko-wifi
|
|
|
|
|
2011-11-30 18:45:20 +08:00
|
|
|
# If you have installed libnotify delete this option:
|
|
|
|
ac_add_options --disable-libnotify
|
|
|
|
|
2011-11-29 22:51:04 +08:00
|
|
|
# If you have installed xulrunner uncomment these two lines:
|
|
|
|
# ac_add_options --with-system-libxul
|
|
|
|
# ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-&xulrunner-version;
|
|
|
|
|
2012-01-10 20:47:26 +08:00
|
|
|
# Uncomment these if you have installed them:
|
2011-12-21 02:55:26 +08:00
|
|
|
# ac_add_options --with-system-nspr
|
|
|
|
# ac_add_options --with-system-nss
|
2011-11-28 05:41:28 +08:00
|
|
|
# ac_add_options --enable-system-sqlite
|
|
|
|
# ac_add_options --with-system-libvpx
|
|
|
|
# ac_add_options --enable-startup-notification
|
2012-01-16 21:01:37 +08:00
|
|
|
# ac_add_options --enable-system-hunspell
|
2012-01-16 22:56:53 +08:00
|
|
|
# ac_add_options --with-system-libevent
|
2011-01-08 05:25:26 +08:00
|
|
|
|
2011-11-28 05:41:28 +08:00
|
|
|
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-build-dir
|
2011-11-30 02:31:59 +08:00
|
|
|
ac_add_options --enable-official-branding
|
2011-12-09 03:49:21 +08:00
|
|
|
ac_add_options --prefix=/usr
|
2011-11-30 02:31:59 +08:00
|
|
|
|
2011-12-21 02:55:26 +08:00
|
|
|
# The rest of these options have no effect if you're
|
2011-11-30 02:31:59 +08:00
|
|
|
# building against an already installed xulrunner:
|
2012-01-16 21:01:37 +08:00
|
|
|
ac_add_options --with-pthreads
|
2011-11-28 05:41:28 +08:00
|
|
|
ac_add_options --enable-system-ffi
|
2012-01-16 21:01:37 +08:00
|
|
|
ac_add_options --with-system-jpeg
|
|
|
|
ac_add_options --with-system-png
|
2011-11-28 05:41:28 +08:00
|
|
|
ac_add_options --enable-system-cairo
|
2012-01-16 21:01:37 +08:00
|
|
|
ac_add_options --with-system-zlib
|
2011-11-28 05:41:28 +08:00
|
|
|
ac_add_options --enable-shared
|
|
|
|
ac_add_options --disable-static
|
|
|
|
ac_add_options --disable-debug
|
|
|
|
ac_add_options --disable-crashreporter
|
2005-12-25 01:34:04 +08:00
|
|
|
ac_add_options --disable-installer
|
2009-03-12 21:37:30 +08:00
|
|
|
ac_add_options --disable-updater
|
2011-11-29 22:51:04 +08:00
|
|
|
ac_add_options --disable-tests
|
2011-11-28 05:41:28 +08:00
|
|
|
EOF</userinput></screen>
|
2009-03-12 21:37:30 +08:00
|
|
|
|
2005-12-25 01:34:04 +08:00
|
|
|
<para>Compile <application>Firefox</application> by issuing the
|
2005-12-25 05:12:21 +08:00
|
|
|
following commands:</para>
|
2005-12-25 01:34:04 +08:00
|
|
|
|
2011-12-05 08:18:58 +08:00
|
|
|
<screen><userinput>sed -i 's# ""##' browser/base/Makefile.in &&
|
2011-12-01 21:19:03 +08:00
|
|
|
make -f client.mk</userinput></screen>
|
2005-11-30 03:07:13 +08:00
|
|
|
|
2011-11-30 00:24:22 +08:00
|
|
|
<para>If you have <emphasis>not</emphasis> linked
|
|
|
|
<application>Firefox</application> against an installed
|
|
|
|
<application>Xulrunner</application>:</para>
|
|
|
|
|
|
|
|
<screen><userinput>make -C firefox-build-dir/browser/installer</userinput></screen>
|
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
<para>This package does not come with a test suite.</para>
|
2005-04-11 03:19:58 +08:00
|
|
|
|
2011-11-30 00:24:22 +08:00
|
|
|
<para>Now, if you have <emphasis>not</emphasis> linked
|
|
|
|
<application>Firefox</application> against an installed
|
|
|
|
<application>Xulrunner</application>, as the
|
|
|
|
<systemitem class="username">root</systemitem> user, install the
|
|
|
|
package:</para>
|
2005-12-25 01:34:04 +08:00
|
|
|
|
2011-12-01 06:23:49 +08:00
|
|
|
<screen role="root"><userinput>mkdir /usr/lib/firefox-&firefox-version; &&
|
2011-12-21 04:55:31 +08:00
|
|
|
tar -xvf firefox-build-dir/dist/firefox-*.tar.bz2 -C /usr/lib/firefox-&firefox-version; --strip-components=1 &&
|
2011-12-01 06:23:49 +08:00
|
|
|
ln -sfv ../lib/firefox-&firefox-version;/firefox /usr/bin/firefox &&
|
2011-11-28 05:41:28 +08:00
|
|
|
mkdir -p /usr/lib/mozilla/plugins &&
|
2011-12-01 06:23:49 +08:00
|
|
|
ln -sv ../mozilla/plugins /usr/lib/firefox-&firefox-version; &&
|
|
|
|
chown -R -v root:root /usr/lib/firefox-&firefox-version;</userinput></screen>
|
2011-11-30 00:24:22 +08:00
|
|
|
|
2011-12-21 02:55:26 +08:00
|
|
|
<para>If you <emphasis>have</emphasis> linked against an already installed
|
|
|
|
<application>Xulrunner</application>, as the
|
2011-11-30 00:24:22 +08:00
|
|
|
<systemitem class="username">root</systemitem> user:</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>make -C firefox-build-dir install &&
|
|
|
|
rm /usr/bin/firefox &&
|
|
|
|
cat > /usr/bin/firefox << "EOF" &&
|
|
|
|
#!/bin/bash
|
|
|
|
/usr/lib/xulrunner-&xulrunner-version;/xulrunner /usr/lib/firefox-&firefox-version;/application.ini "${@}"
|
|
|
|
EOF
|
|
|
|
chmod 755 /usr/bin/firefox &&
|
|
|
|
mkdir -p /usr/lib/mozilla/plugins &&
|
|
|
|
ln -sv ../mozilla/plugins /usr/lib/firefox-&firefox-version; &&
|
|
|
|
chown -R -v root:root /usr/lib/firefox-&firefox-version;</userinput></screen>
|
2009-09-06 14:18:18 +08:00
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
</sect2>
|
|
|
|
|
2005-08-25 10:16:32 +08:00
|
|
|
<sect2 role="commands">
|
|
|
|
<title>Command Explanations</title>
|
|
|
|
|
2011-12-05 08:18:58 +08:00
|
|
|
<para><command>sed -i 's# ""##' browser/base/Makefile.in</command>: This
|
2011-12-01 21:19:03 +08:00
|
|
|
removes an unprintable control character from the title bar.</para>
|
|
|
|
|
2006-01-24 07:29:05 +08:00
|
|
|
<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>
|
2011-11-28 05:41:28 +08:00
|
|
|
file to get initial configuration and setup parameters.</para>
|
2005-08-25 10:16:32 +08:00
|
|
|
|
2011-11-29 22:51:04 +08:00
|
|
|
<para><command>make -C firefox-build-dir/browser/installer</command>:
|
|
|
|
this creates a <application>Firefox</application> tarball.</para>
|
|
|
|
|
|
|
|
<para><command>tar -xfv firefox-build-dir/dist ...</command>: This untars
|
2011-12-01 06:23:49 +08:00
|
|
|
<application>Firefox</application> in /usr/lib. The
|
|
|
|
<option>--strip-components=1</option> option removes the leading
|
|
|
|
'firefox' directory from the filenames, allowing us to untar it
|
|
|
|
into a versioned directory. Untaring it (instead of running make install)
|
|
|
|
prevents it installing /usr/lib/firefox-devel-&firefox-version; which
|
2011-12-21 02:55:26 +08:00
|
|
|
contains about 430 MB of files. If you need any of those files,
|
|
|
|
they're in <xref linkend="xulrunner"/></para>
|
2011-11-30 00:24:22 +08:00
|
|
|
|
|
|
|
<para><command>make -C firefox-build-dir install</command>: This runs
|
|
|
|
<command>make install</command> in firefox-build-dir.</para>
|
2011-11-29 22:51:04 +08:00
|
|
|
|
|
|
|
<para><command>ln -sfv ... /usr/bin/firefox</command>: this puts a symbolic
|
|
|
|
link to the <command>firefox</command> executable in your ${PATH}.</para>
|
2011-11-28 05:41:28 +08:00
|
|
|
|
|
|
|
<para><command>mkdir -p /usr/lib/mozilla/plugins</command>: this checks
|
|
|
|
that /usr/lib/mozilla/plugins exists (if you installed
|
|
|
|
<xref linkend="librsvg"/>, it was probably already there).</para>
|
2005-08-25 10:16:32 +08:00
|
|
|
|
2011-11-28 05:41:28 +08:00
|
|
|
<para><command>ln -sv ... /usr/lib/firefox-&firefox-version;</command>:
|
|
|
|
this makes a symbolic link to /usr/lib/mozilla/plugins.</para>
|
2006-01-19 04:57:04 +08:00
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
</sect2>
|
|
|
|
|
2011-12-03 01:02:01 +08:00
|
|
|
<sect2 role="configuration">
|
|
|
|
<title>Configuring Firefox</title>
|
|
|
|
|
|
|
|
<para>If you deleted the <option>--disable-webm</option> option from your
|
|
|
|
<filename>mozconfig</filename>, your <application>Firefox</application>
|
|
|
|
can play most YouTube videos without the need for the flash plugin. To
|
|
|
|
enable this, go to <ulink
|
|
|
|
url="http://www.youtube.com/html5">http://www.youtube.com/html5</ulink>
|
|
|
|
and click on 'Join the HTML5 Trial' (needs cookies
|
|
|
|
enabled).</para>
|
|
|
|
|
|
|
|
</sect2>
|
|
|
|
|
2005-05-21 16:19:50 +08:00
|
|
|
<sect2 role="content">
|
|
|
|
<title>Contents</title>
|
|
|
|
|
|
|
|
<segmentedlist>
|
|
|
|
<segtitle>Installed Programs</segtitle>
|
|
|
|
<segtitle>Installed Libraries</segtitle>
|
|
|
|
<segtitle>Installed Directories</segtitle>
|
|
|
|
|
|
|
|
<seglistitem>
|
2011-01-08 05:25:26 +08:00
|
|
|
<seg>firefox</seg>
|
2005-05-21 16:19:50 +08:00
|
|
|
<seg>Numerous libraries, browser components, plugins, extensions, and
|
|
|
|
helper modules installed in <filename
|
2011-12-21 02:55:26 +08:00
|
|
|
class="directory">/usr/lib/firefox-&firefox-version;</filename>.</seg>
|
2011-12-01 06:23:49 +08:00
|
|
|
<seg>/usr/lib/firefox-&firefox-version;</seg>
|
2005-05-21 16:19:50 +08:00
|
|
|
</seglistitem>
|
|
|
|
</segmentedlist>
|
|
|
|
|
|
|
|
<variablelist>
|
|
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
|
|
<?dbfo list-presentation="list"?>
|
|
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
|
|
|
|
<varlistentry id="firefox-prog">
|
|
|
|
<term><command>firefox</command></term>
|
|
|
|
<listitem>
|
2011-11-28 05:41:28 +08:00
|
|
|
<para>is a gtk2 internet browser that uses the gecko rendering
|
|
|
|
engine.</para>
|
2005-05-21 16:19:50 +08:00
|
|
|
<indexterm zone="firefox firefox-prog">
|
|
|
|
<primary sortas="b-firefox">firefox</primary>
|
|
|
|
</indexterm>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
|
|
|
|
</variablelist>
|
|
|
|
|
|
|
|
</sect2>
|
2004-02-23 09:29:29 +08:00
|
|
|
|
|
|
|
</sect1>
|