wiki:BuildingFromSource

Version 5 (modified by moo, 9 years ago) (diff)

syntax highlight

Building From Source

Pre-requirement check list

You don't have to check the following list yourself, the configure script will do for you, unless you have problem with configure/make.

  • Get the XCache source files, see GettingSource.
  • the lastest version of php 4.3.x, 4.4.x, 5.1.x, 5.2.x or 6.x series, 5.0.x isn't one of them. You can check the version with:
    $ php-cgi -v
    PHP 4.4.3-dev (cgi-fcgi) (built: Mar 10 2006 18:46:02)
    Copyright (c) 1997-2006 The PHP Group
    Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
    
    or setup a file with:
    <?php
    phpinfo();
    ?>
    
    and request it from your browser.
  • Get the php works with webserver without XCache first!
  • common build tools: c compiler, make, libtool (required by php build env)
  • php building env installed. if you've install php yourself, make sure you have do "make install". check it out with:
    $ which phpize
    /usr/local/bin/phpize
    (or)
    /usr/bin/phpize
    
    you output may be vary from this, depending on your installtion of php. if it's not found, you should find it yourself
  • m4
  • indent (optional)

Building

GettingSource, and cd into XCache directory.

~ $ cd ~/src/xcache
~/src/xcache $ _

the following "$" and "#" is assuming you're under XCache source directory, as above.

everytime you upgrade php, or update to a new XCache, you have to do:

$ phpize

and you get "configure" script now. ok, check what configure option we have.

$ mkdir build-by-moo
$ cd build-by-moo
$ ../configure --help
......
  --enable-xcache         Include XCACHE support.
  --enable-xcache-optimizer       XCACHE: (N/A)
  --enable-xcache-coverage        XCACHE: Enable code coverage dumper, NOT for production server
  --enable-xcache-assembler       XCACHE: (N/A)
  --enable-xcache-disassembler    XCACHE: Enable opcode to php variable dumper, NOT for production server
  --enable-xcache-encoder         XCACHE: (N/A)
  --enable-xcache-decoder         XCACHE: (N/A)
  --enable-xcache-test            XCACHE: Enable self test - FOR DEVELOPERS ONLY!!
......

(now run configure with options you selected)
$ ./configure --enable-xcache --enable-xcache-disassembler
(many output here, if you have problem, read the error message twice, and search inside config.log, and check Pre-requirement in this page above)

$ make
(many output here again, check if it success or error out.)

Installing

$ su
Password:
(input your root password here. whenever u see a red # in code listing in this wiki, it means you need to be root to do that)

# make install
(many output here, and you can see where the XCache extension is installed into, remember the extension path)

See also: GettingSource (prev), InstallingAsPhpExtension (next)