source: xsoft/graphweb/firefox.xml@ e50f829

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 e50f829 was e50f829, checked in by Randy McMurchy <randy@…>, 19 years ago

Added a GCC-4 patch to the Firefox instructions

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

  • Property mode set to 100644
File size: 10.3 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 firefox-download-http "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;-source.tar.bz2">
8 <!ENTITY firefox-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;-source.tar.bz2">
9 <!ENTITY firefox-md5sum "7b4c1d10d478dcb4c52fbbe3e41745d9">
10 <!ENTITY firefox-size "32.0 MB">
11 <!ENTITY firefox-buildsize "545 MB">
12 <!ENTITY firefox-time "10.3 SBU">
13]>
14
15<!--
16
17Devs:
18
19Always check the browser/config/mozconfig file in the source tree for
20any changes to the options passed to configure. This file shows the
21default build used by Mozilla. BLFS adds to this, but the values here
22should be in our setup.
23
24-->
25
26<sect1 id="firefox" xreflabel="Firefox-&firefox-version;">
27 <?dbhtml filename="firefox.html" ?>
28
29 <sect1info>
30 <othername>$LastChangedBy$</othername>
31 <date>$Date$</date>
32 </sect1info>
33
34 <title>Firefox-&firefox-version;</title>
35
36 <indexterm zone="firefox">
37 <primary sortas="a-Firefox">Firefox</primary>
38 </indexterm>
39
40 <sect2 role="package">
41 <title>Introduction to Firefox</title>
42
43 <para><application>Firefox</application> is a stand-alone browser
44 based on the <application>Mozilla</application> codebase.</para>
45
46 <bridgehead renderas="sect3">Package Information</bridgehead>
47 <itemizedlist spacing="compact">
48 <listitem>
49 <para>Download (HTTP): <ulink url="&firefox-download-http;"/></para>
50 </listitem>
51 <listitem>
52 <para>Download (FTP): <ulink url="&firefox-download-ftp;"/></para>
53 </listitem>
54 <listitem>
55 <para>Download MD5 sum: &firefox-md5sum;</para>
56 </listitem>
57 <listitem>
58 <para>Download size: &firefox-size;</para>
59 </listitem>
60 <listitem>
61 <para>Estimated disk space required: &firefox-buildsize;</para>
62 </listitem>
63 <listitem>
64 <para>Estimated build time: &firefox-time;</para>
65 </listitem>
66 </itemizedlist>
67
68 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
69 <itemizedlist spacing="compact">
70 <listitem>
71 <para>Required patch: <ulink
72 url="&patch-root;/firefox-&firefox-version;-gcc4-1.patch"/></para>
73 </listitem>
74 </itemizedlist>
75
76 <bridgehead renderas="sect3">Firefox Dependencies</bridgehead>
77
78 <bridgehead renderas="sect4">Required</bridgehead>
79 <para><xref linkend="gtk2"/>,
80 <xref linkend="libidl"/> and
81 <xref linkend="zip"/></para>
82
83 <bridgehead renderas="sect4">Optional</bridgehead>
84 <para><xref linkend="libjpeg"/>,
85 <xref linkend="unzip"/>,
86 <xref linkend="gnome-vfs"/> and
87 <xref linkend="libgnome"/> (to build the gnomevfs extension),
88 <xref linkend="mitkrb"/> or <xref linkend="heimdal"/>
89 (for the GSSAPI libraries to build the negotiateauth extension),
90 <xref linkend="doxygen"/>,
91 <ulink url="http://xprint.mozdev.org/">Xprint</ulink>,
92 <ulink url="http://perens.com/FreeSoftware/">Electric Fence</ulink> and
93 <ulink url="http://cairographics.org/">Cairo</ulink></para>
94
95 </sect2>
96
97 <sect2 role="installation">
98 <title>Installation of Firefox</title>
99
100 <para>The configuration of <application>Firefox</application> is very
101 similar to <xref linkend="mozilla"/> and hence the options are not
102 discussed. Refer to the <xref linkend="mozilla"/> instructions for
103 explanations and additional configuration information.</para>
104
105 <para><application>Firefox</application> default behavior when invoked
106 with a URL parameter is to open a new browser window. If you would rather
107 <application>Firefox</application> open a new tab in an existing browser
108 window, issue the following command:</para>
109
110<screen><userinput>sed -i 's|openURL(${_optLast}|&amp;, new-tab|' browser/app/mozilla.in</userinput></screen>
111
112 <para>Compile and install <application>Firefox</application> by
113 running the following commands:</para>
114
115<screen><userinput>export MOZILLA_OFFICIAL="1" &amp;&amp;
116export BUILD_OFFICIAL="1" &amp;&amp;
117export MOZ_PHOENIX="1" &amp;&amp;
118
119sed -i 's| dist_bin="$moz_libdir"|\
120&amp;\n run_moz="$dist_bin/run-mozilla.sh"|' browser/app/mozilla.in &amp;&amp;
121
122patch -Np1 -i ../firefox-&firefox-version;-gcc4-1.patch &amp;&amp;
123./configure --prefix=/usr \
124 --with-default-mozilla-five-home=/usr/lib/firefox-&firefox-version; \
125 --with-user-appdir=.firefox \
126 --with-system-zlib \
127 --with-system-png \
128 --enable-application=browser \
129 --enable-default-toolkit=gtk2 \
130 --enable-extensions=cookie,xml-rpc,xmlextras,pref,\
131transformiix,universalchardet,webservices,inspector,\
132gnomevfs,negotiateauth \
133 --enable-crypto \
134 --enable-xft \
135 --enable-xinerama \
136 --enable-optimize \
137 --enable-reorder \
138 --enable-strip \
139 --enable-cpp-rtti \
140 --enable-single-profile \
141 --disable-freetype2 \
142 --disable-accessibility \
143 --disable-debug \
144 --disable-tests \
145 --disable-logging \
146 --disable-pedantic \
147 --disable-installer \
148 --disable-mailnews \
149 --disable-ldap \
150 --disable-composer \
151 --disable-profilesharing &amp;&amp;
152make</userinput></screen>
153
154 <para>You should add the <option>--with-system-jpeg</option> switch
155 to the <command>configure</command> script if you have
156 <application>libjpeg</application> installed.</para>
157
158 <para>This package does not come with a test suite.</para>
159
160 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
161
162<screen role="root"><userinput>make install &amp;&amp;
163install -v -m755 -d /usr/include/firefox-&firefox-version;/nss &amp;&amp;
164cp -v -Lf dist/private/nss/*.h dist/public/nss/*.h \
165 /usr/include/firefox-&firefox-version;/nss</userinput></screen>
166
167 <para>To enable multi-user operation, execute the following as the
168 <systemitem class="username">root</systemitem> user:</para>
169
170<screen role="root"><userinput>cd /usr/lib/firefox-&firefox-version; &amp;&amp;
171export LD_LIBRARY_PATH="$PWD" &amp;&amp;
172export MOZILLA_FIVE_HOME="$PWD" &amp;&amp;
173./regxpcom &amp;&amp;
174./regchrome &amp;&amp;
175touch `find . -name *.rdf`</userinput></screen>
176
177 <note>
178 <para>You should run <command>/usr/bin/firefox</command> once as the
179 <systemitem class="username">root</systemitem> user (or any user with
180 write privileges) to create some necessary additional files in the
181 <filename class='directory'>/usr</filename> hierarchy.</para>
182 </note>
183
184 <para>Lastly, unset the build variables from the unprivileged user's
185 environment:</para>
186
187<screen><userinput>unset MOZILLA_OFFICIAL &amp;&amp;
188unset BUILD_OFFICIAL &amp;&amp;
189unset MOZ_PHOENIX</userinput></screen>
190
191 </sect2>
192
193 <sect2 role="commands">
194 <title>Command Explanations</title>
195
196 <para><command>sed -i '...' browser/app/mozilla.in</command>: This command
197 fixes an issue where <application>Firefox</application> wants to call the
198 profile manager instead of just invoking another copy of itself.</para>
199
200 </sect2>
201
202 <sect2 role="configuration">
203 <title>Configuring Firefox</title>
204
205 <para>No specific configuration is required as long as the
206 <command>firefox</command> script is in the user's path. If
207 <application>Firefox</application> is installed in a non-standard location,
208 then make a symlink to the <command>firefox</command> script from
209 <filename class="directory">/usr/bin</filename>.</para>
210
211 <para>Many applications look for <command>netscape</command> when they
212 need to open a browser. You may make the following symlink for convenience
213 (as the <systemitem class="username">root</systemitem> user).</para>
214
215<screen role="root"><userinput>ln -v -sf firefox /usr/bin/netscape</userinput></screen>
216
217 <para>For installing various <application>Firefox</application> plugins,
218 refer to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's
219 PluginDoc Project</ulink>. If you have <xref linkend="jdk"/> already
220 installed, create the following link as the
221 <systemitem class="username">root</systemitem> user to utilize the
222 <application>JAVA</application> plugin: </para>
223
224<screen role="root"><userinput>ln -v -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so \
225 /usr/lib/firefox-&firefox-version;/plugins</userinput></screen>
226
227 </sect2>
228
229 <sect2 role="content">
230 <title>Contents</title>
231
232 <segmentedlist>
233 <segtitle>Installed Programs</segtitle>
234 <segtitle>Installed Libraries</segtitle>
235 <segtitle>Installed Directories</segtitle>
236
237 <seglistitem>
238 <seg>firefox and firefox-config</seg>
239 <seg>Numerous libraries, browser components, plugins, extensions, and
240 helper modules installed in <filename
241 class='directory'>/usr/lib/firefox-&firefox-version;</filename></seg>
242 <seg>/usr/bin/defaults, /usr/include/firefox-&firefox-version;,
243 /usr/lib/firefox-&firefox-version;, and
244 /usr/share/idl/firefox-&firefox-version;</seg>
245 </seglistitem>
246 </segmentedlist>
247
248 <variablelist>
249 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
250 <?dbfo list-presentation="list"?>
251 <?dbhtml list-presentation="table"?>
252
253 <varlistentry id="firefox-prog">
254 <term><command>firefox</command></term>
255 <listitem>
256 <para>is the next-generation browser from Mozilla.</para>
257 <indexterm zone="firefox firefox-prog">
258 <primary sortas="b-firefox">firefox</primary>
259 </indexterm>
260 </listitem>
261 </varlistentry>
262
263 <varlistentry id="firefox-config">
264 <term><command>firefox-config</command></term>
265 <listitem>
266 <para>determines the compile and linker flags that should be
267 used to compile and link programs that use
268 <application>Firefox</application> libraries and browser
269 components.</para>
270 <indexterm zone="firefox firefox-config">
271 <primary sortas="b-firefox-config">firefox-config</primary>
272 </indexterm>
273 </listitem>
274 </varlistentry>
275
276 </variablelist>
277
278 </sect2>
279
280</sect1>
Note: See TracBrowser for help on using the repository browser.