From 654d0de41ff1c4955a7230ad032f6c8bf3407b15 Mon Sep 17 00:00:00 2001 From: jim winstead Date: Tue, 23 Jan 2001 23:43:14 +0000 Subject: [PATCH] clean up some text, fix some extension/module confusion, reorganize the win32 install directions a bit, and include the win32 build instructions git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@40068 c90b9560-bf6c-de11-be94-00142212c4b1 --- chapters/install.xml | 481 +++++++++++++++++++++++++++++++------------ 1 file changed, 344 insertions(+), 137 deletions(-) diff --git a/chapters/install.xml b/chapters/install.xml index 47195e2f80..087361d72e 100644 --- a/chapters/install.xml +++ b/chapters/install.xml @@ -151,18 +151,18 @@ Linux installs - This section contains notes and hints specific to Linux installs - of PHP. + This section contains notes and hints specific to installing + PHP on Linux distributions. Using Packages - Many linux distributions have some sort of package installation, - such as rpm files. This can greatly assist in building a standard + Many Linux distributions have some sort of package installation, + such as RPM. This can greatly assist in setting up a standard configuration, but if you need to have a different set of features (such as a secure server, or a different database driver), you may need to build php and/or your webserver. If you are unfamiliar - with building and compiling your own software, it's worth + with building and compiling your own software, it is worth investigating whether or not somebody has already built a packaged version of PHP with the features you need. @@ -172,8 +172,8 @@ HP-UX installs - This section contains notes and hints specific to HP-UX installs - of PHP. + This section contains notes and hints specific to installing PHP + on HP-UX systems. @@ -194,7 +194,7 @@ uncompress the file and install using swinstall http://gatekeep.cs.utah.edu/ftp/hpux/Gnu/gcc-2.95.2/gcc-2.95.2-sd-10.20.depot.gz gunzip this file and install gcc using swinstall. -3. You need the gnu binutils, you can download a binary distribution from +3. You need the GNU binutils, you can download a binary distribution from http://hpux.connect.org.uk/ftp/hpux/Gnu/binutils-2.9.1/binutils-2.9.1-sd-10.20.depot.gz gunzip and install using swinstall. @@ -204,7 +204,7 @@ http://hpux.connect.org.uk/ftp/hpux/Gnu/bison-1.28/bison-1.28-sd-10.20.depot.gz install as above. 5. You now need flex, you need to download the source from one of the -http://www.gnu.org mirrors. It is in the non-gnu directory of the ftp site. +http://www.gnu.org mirrors. It is in the <filename>non-gnu</filename> directory of the ftp site. Download the file, gunzip, then tar -xvf it. Go into the newly created flex directory and do a ./configure, then a make, and then a make install @@ -256,8 +256,8 @@ Paul Mckay. <sect1 id="install.solaris"> <title>Solaris installs - This section contains notes and hints specific to Solaris installs - of PHP. + This section contains notes and hints specific to installing + PHP on Solaris systems. Required software @@ -325,7 +325,7 @@ Paul Mckay. Using Packages - You can simplify the solaris install process by using pkgadd to + You can simplify the Solaris install process by using pkgadd to install most of your needed components. @@ -334,30 +334,30 @@ Paul Mckay. Mac OS X installs - This section contains notes and hints specific to Mac OS X installs - of PHP. + This section contains notes and hints specific to installing + PHP on Mac OS X. Using Packages There are a few pre-packaged and pre-compiled versions of PHP for - Mac OS X. This can greatly assist in building a standard + Mac OS X. This can greatly assist in setting up a standard configuration, but if you need to have a different set of features (such as a secure server, or a different database driver), you may - need to build php and/or your webserver. If you are unfamiliar + need to build PHP and/or your web server yourself. If you are unfamiliar with building and compiling your own software, it's worth investigating whether or not somebody has already built a packaged version of PHP with the features you need. Lightyear Design offers a pre-built version of PHP for OS X, as does - Tenon Intersystems + Tenon Intersystems. Compiling for OS X server There are two slightly different versions of Mac OS X, client and - server. The following is for OS X server. + server. The following is for OS X Server. @@ -447,7 +447,7 @@ Paul Mckay. <note> <para> These are only used at compile time. If you want to alter PHP's - runtime configuration, please go to <link + runtime configuration, please see the chapter on <link linkend="configuration">Configuration</link>. </para> </note> @@ -1055,7 +1055,7 @@ Paul Mckay. DB2 and Adabas D. It also works for normal ODBC libraries. Has been tested with iODBC, Solid, Adabas D, IBM DB2 and Sybase SQL Anywhere. Requires that one (and only one) of these - modules or the Velocis module is enabled, or a custom ODBC + extensions or the Velocis extension is enabled, or a custom ODBC library specified. This option is only applicable if one of the following options is used: <link linkend="install.configure.with-iodbc">--with-iodbc</link>, @@ -2782,26 +2782,24 @@ Paul Mckay. <sect1 id="install-windows95-nt"> <title>Installation on Windows 95/98/NT systems - There are two main ways to set up PHP for windows, either - manually or with an installshield installer. - - - - Installshield - directions are here. - - - - - Manual Setup - directions are also available. - - - + There are two main ways to install PHP for Windows: either + manually + or by using an InstallShield + installer. + + + If you have Microsoft Visual Studio, you can also + build + PHP from the original source code. + + + Once you have PHP installed on your Windows system, you may also + want to load various extensions + for added functionality. - Windows Installshield + Windows InstallShield The Windows PHP installer available from the downloads page at @@ -2811,12 +2809,12 @@ Paul Mckay. - Install your choosen http server on your system and make sure it - all works. + Install your selected HTTP server on your system + and make sure that it works. - Run the installer exe file and follow the instructions provided by + Run the executable installer and follow the instructions provided by the installation wizard. Two types of installation are supported - standard, which provides sensible defaults for all the settings it can, and advanced, which asks questions as it goes along. @@ -2917,15 +2915,14 @@ Paul Mckay. - Choose which modules you would like to load when PHP + Choose which extensions you would like to load when PHP starts. You can uncomment the: 'extension=php_*.dll' lines - to load these modules. Some modules require you to have + to load these extensions. Some extensions require you to have additional libraries installed on your system for the module to work correctly. The PHP FAQ has more information on where to get supporting libraries. You can also load a - module dynamically in your script using: - dl("php_*.dll"); + module dynamically in your script using dl. @@ -2951,109 +2948,319 @@ Paul Mckay. - - - - Installation of Windows Modules - - After installing PHP and a webserver on windows, you will - probably want to tune your specific modules. The following - table describes the current windows modules. As described in - the manual installation steps, you can choose which modules you - would like to load when PHP starts by uncommenting the: - 'extension=php_*.dll' lines. Some modules require you to have - additional libraries installed on your system for the - module to work correctly. The PHP - FAQ has more information on - where to get supporting libraries. You can also load a - module dynamically in your script using: - dl("php_*.dll"); - - - PHP Modules + + Building from source + + Before getting started, it is worthwhile answering the question: + "Why is building on Windows so hard?" Two reasons come to mind: + + + + Windows does not (yet) enjoy a large community of developers + who are willing to freely share their source. As a direct + result, the necessary investment in infrastructure required + to support such development hasn't been made. By and large, + what is available has been made possible by the porting of + necessary utilities from Unix. Don't be surprised if some of + this heritage shows through from time to time. + + + Pretty much all of the instructions that follow are of the + "set and forget" variety. So sit back and try follow the + instructions below as faithfully as you can. + + + + + Preparations + + Before you get started, you have a lot to download.... + + + + For starters, get the Cygwin toolkit from the closest Cygnus mirror + site. What you are looking for is cygwin.exe file. This will + provide you most of the popular GNU utilities used by the + build process. + + + Download the rest of the build tools you will need from the PHP + site at http://www.php.net/extra/win32build.zip. + + + Get the source code for the DNS name resolver used by PHP + at http://www.php.net/extra/bindlib_w32.zip. This + is a replacement for the resolv.lib + library included in win32build.zip. + + + If you don't already have an unzip utility, you will + need one. A free version is available from InfoZip. + + + + Finally, you are going to need the source to PHP 4 itself. + You can get the latest development version using anonymous CVS. If you get + a snapshot or a source tarball, you + not only will have to untar and ungzip it, but you will have to + convert the bare linefeeds to crlf's in the *.dsp + and *.dsw files before Microsoft Visual C++ + will have anything to do with them. + + + + Place the Zend and + TSRM directories inside the + php4 directory in order for the projects + to be found during the build process. + + + + + Putting it all together + + + Follow the instructions for installing the unzip utility of + your choosing. + + + + Execute cygwin.exe and follow the installation + instructions. If you choose to install to a path other than + c:\cygnus, let the build process know by setting + the Cygwin environment variable. On Windows 95/98 setting + an environment variable can be done by placing a line in + your autoexec.bat. On Windows NT, go to My Computer => + Control Panel => System and select the environment tab. + + + + Make a temporary directory for Cygwin to use, otherwise many + commands (particularly bison) will fail. On Windows 95/98, + mkdir C:\TMP. For Windows NT, + mkdir %SystemDrive%\tmp. + + + + + Make a directory and unzip win32build.zip into it. + + + + Launch Microsoft Visual C++, and from the menu select + Tools => Options. In the dialog, select the + directories tab. Sequentially change the dropdown + to Executables, Includes, and Library files, + and ensure that cygwin\bin, + win32build\include, and + win32build\lib are in each list, + respectively. (To add an entry, select a blank line + at the end of the list and begin typing). Typical entries + will look like this: + + + + c:\cygnus\bin + + + c:\php-win32build\include + + + c:\php-win32build\lib + + + + Press OK, and exit out of Visual C++. + + + + + Make another directory and unzip bindlib_w32.zip + into it. Decide whether you want to have debug symbols available + (bindlib - Win32 Debug) or not (bindlib - Win32 Release). + Build the appropriate configuration: + + + + For GUI users, launch VC++, and then select File => Open + Workspace and select bindlib. Then select Build=>Set + Active Configuration and select the desired configuration. + Finally select Build=>Rebuild All. + + + + For command line users, make sure that you either have + the C++ environment variables registered, or have run + vcvars.bat, and then execute one of the + following: + + + + msdev bindlib.dsp /MAKE "bindlib - Win32 Debug" + + + msdev bindlib.dsp /MAKE "bindlib - Win32 Release" + + + + + At this point, you should have a usable + resolv.lib in either your + Debug or Release + subdirectories. Copy this file into your + win32build\lib directory over the + file by the same name found in there. + + + + + + + + Compiling + + The best way to get started is to build the standalone/CGI version. + + + + For GUI users, launch VC++, and then select File => Open + Workspace and select php4ts. Then select Build=>Set Active + Configuration and select the desired configuration. Finally + select Build=>Rebuild All. + + + + For command line users, make sure that you either have + the C++ environment variables registered, or have run + vcvars.bat, and then execute one of the + following: + + + + msdev php4ts.dsp /MAKE "php4ts - Win32 Debug_TS" + + + msdev php4ts.dsp /MAKE "php4ts - Win32 Release_TS" + + + At this point, you should have a usable + php.exe in either + your Debug_TS or + Release_TS subdirectories. + + + + + + Repeat the above steps with php4isapi.dsp + (which can be found in sapi\isapi) in + order to build the code necessary for integrating PHP with + Microsoft IIS. + + + + + + Installation of Windows extensions + + After installing PHP and a webserver on Windows, you will + probably want to install some extensions for added functionality. + The following table describes some of the extensions available. As + described in the manual installation steps, you can choose which + extensions you would like to load when PHP starts by uncommenting the: + 'extension=php_*.dll' lines. Some extensions require you to have + additional libraries installed on your system for the module to + work correctly. The PHP FAQ + has more information on where to get supporting libraries. You + can also load a module dynamically in your script using dl. + - PHP Modules + PHP Extensions - - php_calendar.dll - Calendar conversion functions - - - php_crypt.dll - Crypt functions - - - php_dbase.dll - DBase functions - - - php_dbm.dll - GDBM emulation via Berkely DB2 library - - - php_filepro.dll - READ ONLY access to filepro databases - - - php_gd.dll - GD Library functions for gif manipulation - - - php_hyperwave.dll - HyperWave functions - - - php_imap4r2.dll - IMAP 4 functions - - - php_ldap.dll - LDAP functions - - - php_msql1.dll - mSQL 1 client - - - php_msql2.dll - mSQL 2 client - - - php_mssql.dll - MSSQL client (requires MSSQL DB-Libraries - - - php3_mysql.dll (Built into PHP 4) - MySQL functions - - - php_nsmail.dll - Netscape mail functions - - - php_oci73.dll - Oracle functions - - - php_snmp.dll - SNMP get and walk functions (NT only!) - - - php_zlib.dll - ZLib functions - + + php_calendar.dll + Calendar conversion functions + + + php_crypt.dll + Crypt functions + + + php_dbase.dll + dBase functions + + + php_dbm.dll + Berkeley DB2 library + + + php_filepro.dll + Read-only access to Filepro databases + + + php_gd.dll + GD library functions for GIF manipulation + + + php_hyperwave.dll + HyperWave functions + + + php_imap4r2.dll + IMAP 4 functions + + + php_ldap.dll + LDAP functions + + + php_msql1.dll + mSQL 1 client + + + php_msql2.dll + mSQL 2 client + + + php_mssql.dll + MSSQL client (requires MSSQL DB-Libraries + + + php3_mysql.dll (built into PHP 4) + MySQL functions + + + php_nsmail.dll + Netscape mail functions + + + php_oci73.dll + Oracle functions + + + php_snmp.dll + SNMP get and walk functions (NT only!) + + + php_zlib.dll + ZLib compression functions +
-
-
- + Apache Server installs @@ -3348,7 +3555,7 @@ Paul Mckay.
You can of course compile your Caudium module with support for the - various extension modules available in PHP4. See the + various extensions available in PHP 4. See the complete list of configure options for an exhaustive rundown.