home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam    

Programming PHPProgramming PHPSearch this book

14.2. What You'll Need

To develop a PHP extension, you'll need a copy of the PHP source code and various software development tools, as discussed below.

14.2.1. The PHP Source

Fetch a copy of the current CVS version of the PHP code, to ensure that you are using the most up-to-date version of the API. See http://cvs.php.net for instructions on how to obtain the CVS version of the code via anonymous CVS.

PHP comes with a skeleton extension framework generator called ext_skel; this little script is a lifesaver. You should spend some time studying the README.EXT_SKEL and README.SELF-CONTAINED-EXTENSIONS files that come with the PHP source code.

The PHP source code offers you dozens of example extensions to look at. Each subdirectory in the ext/ directory contains a PHP extension. Chances are that just about anything you need to implement will in some way resemble one of the existing examples, and you are strongly encouraged to steal/borrow as much existing code as possible (with proper attribution, of course).

14.2.2. Software Tools

To write an extension, you need to have working versions of these tools installed:

  • bison

  • flex

  • m4

  • autoconf

  • automake

  • libtool

  • An ANSI-compliant compiler such as gcc

  • make

  • sed, awk, and Perl are also used optionally here and there

These are all standard tools available free on the Internet (see http://www.gnu.org for most of them). If you are running a Linux distribution or any of the BSD operating systems, follow your distribution's mechanism for installing new packages. In Windows, you can install the cygwin environment to run tools such as bison, flex, and autoconf, doing the final build using Microsoft Visual DevStudio.

Library Navigation Links

Copyright © 2003 O'Reilly & Associates. All rights reserved.