source: general/prog/php.xml@ f7be881

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

Updated to PHP-5.1.1

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

  • Property mode set to 100644
File size: 14.9 KB
RevLine 
[08254fc]1<?xml version="1.0" encoding="ISO-8859-1"?>
[ff769b8c]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
[08254fc]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY php-download-http "http://us2.php.net/distributions/php-&php-version;.tar.bz2">
8 <!ENTITY php-download-ftp "ftp://ftp.isu.edu.tw/pub/Unix/Web/PHP/distributions/php-&php-version;.tar.bz2">
[ba1a38b]9 <!ENTITY php-md5sum "70a7c90de182d1a1901c390b844153c7">
10 <!ENTITY php-size "6.1 MB">
11 <!ENTITY php-buildsize "204 MB (includes installing all documentation)">
12 <!ENTITY php-time "2.5 SBU (additional 1.7 SBU to run the test suite)">
[08254fc]13]>
14
[6683a00]15<sect1 id="php" xreflabel="PHP-&php-version;">
[db81e4cb]16 <?dbhtml filename="php.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
[256ee72c]21 <keywordset>
22 <keyword role="package">php-&php-version;.tar</keyword>
[22ac237]23 <keyword role="ftpdir">php</keyword>
[256ee72c]24 </keywordset>
[db81e4cb]25 </sect1info>
26
27 <title>PHP-&php-version;</title>
28
29 <indexterm zone="php">
30 <primary sortas="a-PHP">PHP</primary>
31 </indexterm>
32
33 <sect2 role="package">
34 <title>Introduction to PHP</title>
35
[7cd76d62]36 <para><application>PHP</application> is the PHP Hypertext Preprocessor.
37 Primarily used in dynamic web sites, it allows for programming code to be
[db81e4cb]38 directly embedded into the HTML markup.</para>
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>Download (HTTP): <ulink url="&php-download-http;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download (FTP): <ulink url="&php-download-ftp;"/></para>
47 </listitem>
48 <listitem>
49 <para>Download MD5 sum: &php-md5sum;</para>
50 </listitem>
51 <listitem>
52 <para>Download size: &php-size;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated disk space required: &php-buildsize;</para>
56 </listitem>
57 <listitem>
58 <para>Estimated build time: &php-time;</para>
59 </listitem>
60 </itemizedlist>
61
62 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
63 <itemizedlist spacing="compact">
64 <listitem>
[7cd76d62]65 <para>Required patch for Berkeley DB: <ulink
[db81e4cb]66 url="&patch-root;/php-&php-version;-db43-1.patch"/></para>
67 </listitem>
[b84326b7]68 <listitem>
69 <para>Pre-built documentation (optional): <ulink
70 url="http://www.php.net/download-docs.php"/></para>
71 </listitem>
[db81e4cb]72 </itemizedlist>
73
74 <bridgehead renderas="sect3">PHP Dependencies</bridgehead>
75
76 <bridgehead renderas="sect4">Required</bridgehead>
[256ee72c]77 <para role="required"><xref linkend="apache"/></para>
[db81e4cb]78
[2f65edb]79 <bridgehead renderas="sect4">Recommended</bridgehead>
[256ee72c]80 <para role="recommended"><xref linkend="libxml2"/></para>
[2f65edb]81
[b84326b7]82 <bridgehead renderas="sect4">Optional System Utilities and Libraries</bridgehead>
[256ee72c]83 <para role="optional"><xref linkend="libxslt"/>,
[b7ea972]84 <xref linkend="gamin"/>,
[b84326b7]85 <xref linkend="gmp"/>,
[db81e4cb]86 <xref linkend="pcre"/>,
87 <xref linkend="aspell"/>,
88 <xref linkend="pkgconfig"/>,
[2f65edb]89 <xref linkend="expat"/> (deprecated alternative to <xref linkend="libxml2"/>),
[b3799be4]90 <ulink url="http://www.ossp.org/pkg/lib/mm/">OSSP mm</ulink>,
[db81e4cb]91 <ulink url="http://www.net-snmp.org/">Net-SNMP</ulink>,
[ba1a38b]92 <ulink url="http://www.gnu.org/software/pth/">GNU Pth</ulink>,
93 <ulink url="http://re2c.org/">re2c</ulink>,
[db81e4cb]94 <ulink url="http://dmalloc.com/">Dmalloc</ulink>,
[b84326b7]95 <ulink url="http://www.gnu.org/software/recode/">recode</ulink> and
[ba1a38b]96 <xref linkend="sendmail"/> (or another
97 <ulink url="../server/mail.html">MTA</ulink> that provides a
98 <command>sendmail</command> command)</para>
[b84326b7]99
100 <bridgehead renderas="sect4">Optional Graphics Utilities and Libraries</bridgehead>
[256ee72c]101 <para role="optional"><xref linkend="libjpeg"/>,
[b84326b7]102 <xref linkend="libtiff"/>,
103 <xref linkend="libpng"/>,
[ba1a38b]104 <xref linkend="libexif"/>,
[b84326b7]105 <xref linkend="freetype2"/>,
106 X (<xref linkend="xorg"/> or <xref linkend="xfree86"/>),
107 <ulink url="http://www.fastio.com/">ClibPDF</ulink>,
108 <ulink url="http://www.boutell.com/gd/">GD</ulink>,
109 <ulink url="http://gd.tuwien.ac.at/visual/ibiblio/libs/graphics/t1lib-5.1.0.tar.gz">
110 t1lib</ulink> and
111 <ulink url="http://partners.adobe.com/asn/acrobat/forms.jsp">FDF Toolkit</ulink></para>
112
113 <bridgehead renderas="sect4">Optional Web Utilities</bridgehead>
[256ee72c]114 <para role="optional"><xref linkend="curl"/>,
[b84326b7]115 <xref linkend="html-tidy"/>,
[db81e4cb]116 <ulink url="http://www.mnogosearch.org/">mnoGoSearch</ulink>,
[b84326b7]117 <ulink url="http://www.hyperwave.com/">Hyperwave</ulink>,
[ba1a38b]118 <ulink url="http://www.roxen.com/products/webserver/">Roxen WebServer</ulink>,
[b84326b7]119 <ulink url="http://caudium.net/">Caudium</ulink> and
120 <ulink url="http://www.openwddx.org/">WDDX</ulink></para>
121
122 <bridgehead renderas="sect4">Optional Data Management Utilities and Libraries</bridgehead>
[256ee72c]123 <para role="optional"><xref linkend="openldap"/>,
[b84326b7]124 <xref linkend="gdbm"/>,
125 <xref linkend="db"/>,
126 <xref linkend="mysql"/>,
127 <xref linkend="postgresql"/>,
[76b19ad]128 <xref linkend="unixodbc"/>,
[b84326b7]129 <ulink url="http://qdbm.sourceforge.net/">QDBM</ulink>,
130 <ulink url="http://cr.yp.to/cdb.html">cdb</ulink>,
131 <ulink url="http://www.sqlite.org/">SQLite</ulink>,
[db81e4cb]132 <ulink url="http://www.hughes.com.au/products/msql/">Mini SQL</ulink>,
133 <ulink url="http://www.empress.com/">Empress</ulink>,
134 <ulink url="http://www.birdstep.com/">Birdstep</ulink>,
135 <ulink url="http://www.dbmaker.com/">DBMaker</ulink>,
136 <ulink url="http://www.softwareag.com/">Adabas</ulink>,
[b84326b7]137 <ulink url="http://www.frontbase.com/">FrontBase</ulink> and
138 <ulink url="http://www.mainstreetsoftworks.com/">Monetra</ulink></para>
139
140 <bridgehead renderas="sect4">Optional Security/Encryption Utilities and Libraries</bridgehead>
[256ee72c]141 <para role="optional"><xref linkend="openssl"/>,
[b84326b7]142 <xref linkend="cyrus-sasl"/>,
143 <xref linkend="mitkrb"/> or <xref linkend="heimdal"/>,
144 <ulink url="http://mcrypt.sourceforge.net/">libmcrypt</ulink> and
145 <ulink url="http://mhash.sourceforge.net/">mhash</ulink></para>
[db81e4cb]146
147 </sect2>
148
149 <sect2 role="installation">
150 <title>Installation of PHP</title>
151
152 <note>
153 <para>You can use <application>PHP</application>
[ba1a38b]154 for server-side scripting, command-line scripting or client-side
155 GUI applications. This book provides instructions for
[db81e4cb]156 setting up <application>PHP</application> for
157 server-side scripting as it is the most common form.</para>
158 </note>
159
[7cd76d62]160 <para>If you have <application>Berkeley DB</application> installed and
[db81e4cb]161 wish to utilize it, apply the following patch:</para>
162
163<screen><userinput>patch -Np1 -i ../php-&php-version;-db43-1.patch</userinput></screen>
164
[b84326b7]165 <note>
166 <para><application>PHP</application> has many more
[ba1a38b]167 <command>configure</command> options that will enable support for various
[b84326b7]168 things. You can use <command>./configure --help</command> to see a full
169 list of the available options. Also, use of the
170 <ulink url="http://www.php.net/">PHP web site</ulink>
171 is highly recommended, as their online docs are very good.</para>
172 </note>
173
[ba1a38b]174 <!-- Commenting this out as libxml is a recommended dependency.
175 Current protocol in the book is to expect folks to have it
176 installed.
177
178 <para>Remove the <parameter>-disable-libxml</parameter> switch if you
[b84326b7]179 have <xref linkend="libxml2"/> installed otherwise
180 <command>pear</command> will not be built.</para>
[ba1a38b]181 -->
[b84326b7]182
[db81e4cb]183 <para>Install <application>PHP</application> by
184 running the following commands:</para>
185
186<screen><userinput>./configure --prefix=/usr \
[4a93a3c]187 --sysconfdir=/etc \
188 --with-apxs2 \
189 --with-config-file-path=/etc \
190 --with-zlib \
[5056a3b]191 --enable-bcmath \
[4a93a3c]192 --with-bz2 \
[990f983]193 --enable-calendar \
[dfb9157]194 --enable-dba \
[5056a3b]195 --enable-exif \
[4a93a3c]196 --enable-ftp \
197 --with-gettext \
[fbbf93e]198 --enable-mbstring \
[36c668d]199 --with-ncurses \
[ba1a38b]200 --with-readline &amp;&amp;
[db81e4cb]201make</userinput></screen>
202
[ba1a38b]203 <para>To test the results, issue: <command>make test</command>. Three of
204 the tests are known to fail.</para>
[1f01e7e7]205
[db81e4cb]206 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
207
208<screen role="root"><userinput>make install &amp;&amp;
[ba1a38b]209install -v -m644 php.ini-recommended /etc/php.ini &amp;&amp;
210install -v -m755 -d /usr/share/doc/php-&php-version; &amp;&amp;
211install -v -m644 CODING_STANDARDS EXTENSIONS INSTALL NEWS \
212 README* TODO* UPGRADING php.gif \
213 /usr/share/doc/php-&php-version; &amp;&amp;
214ln -v -s /usr/lib/php/doc/Archive_Tar/docs/Archive_Tar.txt \
215 /usr/share/doc/php-&php-version;</userinput></screen>
[db81e4cb]216
[b84326b7]217 <para>The pre-built HTML documentation is packaged in two forms: a tarball
218 containing many individual files, useful for quick loading into your
[ba1a38b]219 browser, and one large individual file, which is useful for using the
220 search utility of your browser. If you downloaded either, or both, of the
221 documentation files, issue the following commands as the
222 <systemitem class='username'>root</systemitem> user to install them (note
[b84326b7]223 these instructions assume English docs, modify the tarball names below if
224 necessary).</para>
[db81e4cb]225
[ba1a38b]226 <para>For the <quote>Single HTML</quote> file:</para>
[b84326b7]227
228<screen role="root"><userinput>install -v -m644 ../php_manual_en.html.gz \
229 /usr/share/doc/php-&php-version; &amp;&amp;
230gunzip -v /usr/share/doc/php-&php-version;/php_manual_en.html.gz</userinput></screen>
231
232 <para>For the <quote>Many HTML files</quote> tarball:</para>
233
[ba1a38b]234<screen role="root"><userinput>tar -xvf ../php_manual_en.tar.gz -C /usr/share/doc/php-&php-version; &amp;&amp;
[b84326b7]235chown -v -R root:root /usr/share/doc/php-&php-version;/html</userinput></screen>
[db81e4cb]236
237 </sect2>
[b84326b7]238
[934c9b26]239 <sect2 role="commands">
240 <title>Command Explanations</title>
[db81e4cb]241
[934c9b26]242 <para><parameter>--with-apxs2</parameter>: This parameter
[b84326b7]243 builds the Apache HTTPD 2.0 module.</para>
[934c9b26]244
245 <para><parameter>--with-config-file-path=/etc</parameter>: This parameter
[ba1a38b]246 makes <application>PHP</application> look for the
247 <filename>php.ini</filename> configuration file in
248 <filename class='directory'>/etc</filename>.</para>
[934c9b26]249
[bccbdaea]250 <para><parameter>--with-zlib</parameter>: This parameter adds
[3239e36]251 support for <application>Zlib</application> compression.</para>
[934c9b26]252
[b84326b7]253 <para><parameter>--enable-bcmath</parameter>: Enables
254 <command>bc</command> style precision math functions.</para>
[bccbdaea]255
[2f65edb]256 <para><parameter>--with-bz2</parameter>: Adds support for
[b84326b7]257 <application>Bzip2</application> compression functions.</para>
[934c9b26]258
259 <para><parameter>--enable-calendar</parameter>: This parameter
260 provides support for calendar conversion.</para>
261
262 <para><parameter>--enable-dba</parameter>: This parameter enables
[2f65edb]263 support for database (dbm-style) abstraction layer functions.</para>
[934c9b26]264
265 <para><parameter>--enable-exif</parameter>: Enables functions
266 to access metadata from images.</para>
267
268 <para><parameter>--enable-ftp</parameter>: This parameter
[3239e36]269 enables FTP functions.</para>
[934c9b26]270
271 <para><parameter>--with-gettext</parameter>: Enables functions
[3239e36]272 that use <application>Gettext</application> text translation.</para>
[934c9b26]273
274 <para><parameter>--enable-mbstring</parameter>: This parameter
275 enables multibyte string support.</para>
276
277 <para><parameter>--with-ncurses</parameter>: Provides ncurses
278 terminal independent cursor handling.</para>
279
280 <para><parameter>--with-readline</parameter>: This parameter
[b84326b7]281 enables command line <application>Readline</application> support.</para>
[934c9b26]282
283 <para><parameter>--disable-libxml</parameter>: This parameter
[ba1a38b]284 allows building PHP without <application>libxml2</application>
[2f65edb]285 installed.</para>
[934c9b26]286
287 </sect2>
[bccbdaea]288
[db81e4cb]289 <sect2 role="configuration">
290 <title>Configuring PHP</title>
291
292 <sect3 id="php-config">
293 <title>Config Files</title>
294
[ba1a38b]295 <para><filename>/etc/php.ini</filename> and
[db81e4cb]296 <filename>/etc/pear.conf</filename></para>
297
298 <indexterm zone="php php-config">
299 <primary sortas="e-etc-php.ini">/etc/php.ini</primary>
300 </indexterm>
301
302 <indexterm zone="php php-config">
303 <primary sortas="e-etc-pear.conf">/etc/pear.conf</primary>
304 </indexterm>
305
306 </sect3>
307
308 <sect3>
309 <title>Configuration Information</title>
310
[b84326b7]311 <para>You may have noticed the following from the output of the
312 <command>make install</command> command:</para>
313
[7c1d541]314<screen><computeroutput>You may want to add: /usr/lib/php to your php.ini include_path</computeroutput></screen>
[b84326b7]315
316 <para>If desired, add the entry using the following command as the
317 <systemitem class="username">root</systemitem> user:</para>
318
[7c1d541]319<screen role="root"><userinput>sed -i 's@php/includes"@&amp;\ninclude_path = ".:/usr/lib/php"@' \
[b84326b7]320 /etc/php.ini</userinput></screen>
321
[0619e6d]322 <para>To enable PHP support in the <application>Apache</application>
[db81e4cb]323 web server, a new LoadModule (which should be handled automatically by the
[7cd76d62]324 <command>make install</command> command) and AddType directives
[db81e4cb]325 must be added to the <filename>httpd.conf</filename> file:</para>
326
327<screen><literal>LoadModule php5_module lib/apache/libphp5.so
328AddType application/x-httpd-php .php</literal></screen>
329
[7cd76d62]330 <para>Also, it can be useful to add an entry for
331 <filename>index.php</filename> to the DirectoryIndex directive of the
[db81e4cb]332 <filename>httpd.conf</filename> file.</para>
333
[7cd76d62]334 <para>You'll need to restart the <application>Apache</application> web server
[0619e6d]335 after making any modifications to the <filename>httpd.conf</filename>
[db81e4cb]336 file.</para>
337
338 </sect3>
339
340 </sect2>
341
342 <sect2 role="content">
343 <title>Contents</title>
344
345 <segmentedlist>
346 <segtitle>Installed Programs</segtitle>
347 <segtitle>Installed Library</segtitle>
348 <segtitle>Installed Directories</segtitle>
349
350 <seglistitem>
351 <seg>pear, php, php-config, phpextdist, and phpize</seg>
352 <seg>libphp5.so</seg>
[ba1a38b]353 <seg>/usr/include/php, /usr/lib/php and
354 /usr/share/doc/php-&php-version;</seg>
[db81e4cb]355 </seglistitem>
356 </segmentedlist>
357
358 <variablelist>
359 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
360 <?dbfo list-presentation="list"?>
361 <?dbhtml list-presentation="table"?>
362
363 <varlistentry id="php-prog">
364 <term><command>php</command></term>
365 <listitem>
[7cd76d62]366 <para>is a command line interface that enables you to parse and
[db81e4cb]367 execute PHP code.</para>
368 <indexterm zone="php php-prog">
369 <primary sortas="b-php">php</primary>
370 </indexterm>
371 </listitem>
372 </varlistentry>
373
374 <varlistentry id="pear">
375 <term><command>pear</command></term>
376 <listitem>
[7cd76d62]377 <para>is the PHP Extension and Application
[db81e4cb]378 Repository (PEAR) package manager.</para>
379 <indexterm zone="php pear">
380 <primary sortas="b-pear">pear</primary>
381 </indexterm>
382 </listitem>
383 </varlistentry>
384
385 </variablelist>
386
387 </sect2>
[f45b1953]388
389</sect1>
Note: See TracBrowser for help on using the repository browser.