PHP  
downloads | documentation | faq | getting help | reporting bugs | links 
search for in the  

Anonymous CVS Access

If you wish to get the latest PHP source tree, you can obtain it through anonymous CVS. You should be warned that the CVS version is a development version, and as such, is often unstable, and may not even compile properly. The advantage of using CVS, though, is that you can get the latest fixes and updates, without having to wait for the official releases.

You can find more information about CVS, and download clients for most major platforms, at CVShome.org.

Getting the PHP 4 CVS version to work is a bit more complicated than it is for PHP 3 for two main reasons - first, the engine, Zend, has been separated from the main language tree, and resides in a different CVS module. And second, PHP 4 uses a much more advanced configuration system, that requires you to have not only autoconf installed, but also automake and libtool.

All of the necessary utilities (autoconf, automake. libtool, bison and flex) can be obtained from the GNU FTP site.

If after these warnings you're still interested in obtaining PHP from CVS, here's how.

  • It is recommended that you configure CVS by putting this in your ~/.cvsrc file:
    cvs -z3
    update -d -P
    checkout -P
    diff -u
    
  • Log in to the PHP anonymous CVS server. Use phpfi as the password.
    cvs -d :pserver:[email protected]:/repository login
  • Obtain the PHP 4 CVS tree:
    cvs -d :pserver:[email protected]:/repository co php4
  • Move to the PHP 4 source tree:
    cd php4
  • Obtain the Zend and TSRM (Thread Safe Resource Manager) CVS tree:
    cvs -d :pserver:[email protected]:/repository co Zend TSRM
  • Note:
    You can retrieve a specific release of PHP from CVS by using the -r flag in your cvs command. For example:
    cvs -d :pserver:[email protected]:/repository co -r PHP_4_0_7 php4
    cd php4
    cvs -d :pserver:[email protected]:/repository co -r PHP_4_0_7 Zend TSRM
         
    Tags for major releases include: php_4_0_0, php_4_0_1, php_4_0_1pl1, php_4_0_2, php_4_0_3, php_4_0_4, php_4_0_4pl1, php_4_0_5, php_4_0_6, php_4_1_0, php_4_1_1
  • Make sure you have autoconf 2.13 or newer, automake 1.4 or newer and libtool 1.4 or newer.
    Note:
    Certain combinations of autoconf, automake and libtool may not work when used together.
    See below for details.

    Also, certain versions of autoconf may generate warnings of AC_PROG_CPP called before AC_PROG_CC. These messages can usually be ignored.
  • Run ./buildconf. After a while, the configure script should be generated.
  • From this point onwards, installation is similar to the installation of one of the official packages with one main difference - you must have bison 1.28 or later and flex 2.54 or later to compile, because the pre-generated scanner and parser files are not included in CVS.

There are also other things, like the XML source code for the documentation, available via anonymous CVS. See the web-based view of the CVS server to see what is available, and substitute the appropriate name for "php4" in step 3 (and ignore the later steps).

You can also mirror the PHP CVS repository using CVSup. See here for more details.

autoconf, automake and libtool information

There seem to be problems with libtool 1.4.2. It is suggested that you use libtool 1.4, along with the most current versions of autoconf and automake. You should also ensure that autoconf, automake and libtool are installed in the same directory.

The following combination are known to work.

  • autoconf 2.52, automake 1.4 and libtool 1.4
  • autoconf 2.52, automake 1.5 and libtool 1.4

show source | credits | stats | mirror sites:  
Copyright © 2001, 2002 The PHP Group
All rights reserved.
This mirror generously provided by: Synacor
Last updated: Mon Apr 22 02:04:24 2002 EDT