1. ソースのダウンロード


cd /usr/local/src



    1. ダウンロードしたファイルの解凍


tar zxvf php-5.4.8.tar.gz

cd php-5.4.8


    1. コンフィグオプションの確認

./configure –help
`configure’ configures this package to adapt to many kinds of systems.

Usage: ./configure [OPTION]… [VAR=VALUE]…

To assign environment variables (e.g., CC, CFLAGS…), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

-h, –help              display this help and exit
–help=short        display options specific to this package
–help=recursive    display the short help of all the included packages
-V, –version           display version information and exit
-q, –quiet, –silent   do not print `checking…’ messages
–cache-file=FILE   cache test results in FILE [disabled]
-C, –config-cache      alias for `–cache-file=config.cache’
-n, –no-create         do not create output files
–srcdir=DIR        find the sources in DIR [configure dir or `..’]

Installation directories:
–prefix=PREFIX         install architecture-independent files in PREFIX
–exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX

By default, `make install’ will install all the files in
`/usr/local/bin’, `/usr/local/lib’ etc.  You can specify
an installation prefix other than `/usr/local’ using `–prefix’,
for instance `–prefix=$HOME’.

For better control, use the options below.

Fine tuning of the installation directories:
–bindir=DIR            user executables [EPREFIX/bin]
–sbindir=DIR           system admin executables [EPREFIX/sbin]
–libexecdir=DIR        program executables [EPREFIX/libexec]
–sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
–sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
–localstatedir=DIR     modifiable single-machine data [PREFIX/var]
–libdir=DIR            object code libraries [EPREFIX/lib]
–includedir=DIR        C header files [PREFIX/include]
–oldincludedir=DIR     C header files for non-gcc [/usr/include]
–datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
–datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
–infodir=DIR           info documentation [DATAROOTDIR/info]
–localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
–mandir=DIR            man documentation [DATAROOTDIR/man]
–docdir=DIR            documentation root [DATAROOTDIR/doc/PACKAGE]
–htmldir=DIR           html documentation [DOCDIR]
–dvidir=DIR            dvi documentation [DOCDIR]
–pdfdir=DIR            pdf documentation [DOCDIR]
–psdir=DIR             ps documentation [DOCDIR]

System types:
–build=BUILD     configure for building on BUILD [guessed]
–host=HOST       cross-compile to build programs to run on HOST [BUILD]
–target=TARGET   configure for building compilers for TARGET [HOST]

Optional Features and Packages:
–disable-option-checking  ignore unrecognized –enable/–with options
–disable-FEATURE       do not include FEATURE (same as –enable-FEATURE=no)
–enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
–with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
–without-PACKAGE       do not use PACKAGE (same as –with-PACKAGE=no)
–with-libdir=NAME      Look for libraries in …/NAME rather than …/lib
–disable-rpath         Disable passing additional runtime library
search paths
–enable-re2c-cgoto     Enable -g flag to re2c to use computed goto gcc extension

SAPI modules:

–with-aolserver=DIR    Specify path to the installed AOLserver
–with-apxs=FILE      Build shared Apache 1.x module. FILE is the optional
pathname to the Apache apxs tool apxs
–with-apache=DIR     Build Apache 1.x module. DIR is the top-level Apache
build directory /usr/local/apache
–enable-mod-charset      APACHE: Enable transfer tables for mod_charset (Rus Apache)
pathname to the Apache apxs tool apxs
–with-apxs2=FILE     Build shared Apache 2.0 Handler module. FILE is the optional
pathname to the Apache apxs tool apxs
pathname to the Apache apxs tool apxs
build directory /usr/local/apache
–with-caudium=DIR    Build PHP as a Pike module for use with Caudium.
DIR is the Caudium server dir /usr/local/caudium/server
–disable-cli           Disable building CLI version of PHP
(this forces –without-pear)
–with-continuity=DIR   Build PHP as Continuity Server module.
DIR is path to the installed Continuity Server root
–enable-embed=TYPE   EXPERIMENTAL: Enable building of embedded SAPI library
TYPE is either ‘shared’ or ‘static’. TYPE=shared
–enable-fpm              Enable building of the fpm SAPI executable
–with-fpm-user=USER  Set the user for php-fpm to run as. (default: nobody)
–with-fpm-group=GRP  Set the group for php-fpm to run as. For a system user, this
should usually be set to match the fpm username (default: nobody)
–with-isapi=DIR      Build PHP as an ISAPI module for use with Zeus
–with-litespeed        Build PHP as litespeed module
–with-milter=DIR     Build PHP as Milter application
–with-nsapi=DIR        Build PHP as NSAPI module for Netscape/iPlanet/Sun Webserver
–with-phttpd=DIR       Build PHP as phttpd module
–with-pi3web=DIR     Build PHP as Pi3Web module
–with-roxen=DIR        Build PHP as a Pike module. DIR is the base Roxen
directory, normally /usr/local/roxen/server
–enable-roxen-zts        ROXEN: Build the Roxen module using Zend Thread Safety
–with-thttpd=SRCDIR    Build PHP as thttpd module
–with-tux=MODULEDIR    Build PHP as a TUX module (Linux only)
–with-webjames=SRCDIR  Build PHP as a WebJames module (RISC OS only)
–disable-cgi           Disable building CGI version of PHP

General settings:

–enable-gcov           Enable GCOV code coverage (requires LTP) – FOR DEVELOPERS ONLY!!
–enable-debug          Compile with debugging symbols
–with-layout=TYPE      Set how installed files will be laid out.  Type can
be either PHP or GNU [PHP]
Set the path in which to look for php.ini [PREFIX/lib]
Set the path where to scan for configuration files
–enable-sigchild       Enable PHP’s own SIGCHLD handler
–enable-libgcc         Enable explicitly linking against libgcc
–disable-short-tags    Disable the short-form <? start tag by default
–enable-dmalloc        Enable dmalloc
–disable-ipv6          Disable IPv6 support
–enable-dtrace         Enable DTrace support
–enable-fd-setsize     Set size of descriptor sets



NOTE: Not all extensions can be build as ‘shared’.

Example: –with-foobar=shared,/usr/local/foobar/

o Builds the foobar extension as shared extension.
o foobar package install prefix is /usr/local/foobar/

–disable-all   Disable all extensions which are enabled by default

–with-regex=TYPE       regex library type: system, php. TYPE=php
WARNING: Do NOT use unless you know what you are doing!
–disable-libxml        Disable LIBXML support
–with-libxml-dir=DIR   LIBXML: libxml2 install prefix
–with-openssl=DIR    Include OpenSSL support (requires OpenSSL >= 0.9.6)
–with-kerberos=DIR     OPENSSL: Include Kerberos support
–with-pcre-regex=DIR   Include Perl Compatible Regular Expressions support.
DIR is the PCRE install prefix BUNDLED
–without-sqlite3=DIR Do not include SQLite3 support. DIR is the prefix to
SQLite3 installation directory.
–with-zlib=DIR       Include ZLIB support (requires zlib >= 1.0.9)
–with-zlib-dir=<DIR>   Define the location of zlib install directory
–enable-bcmath         Enable bc style precision math functions
–with-bz2=DIR        Include BZip2 support
–enable-calendar       Enable support for calendar conversion
–disable-ctype         Disable ctype functions
–with-curl=DIR       Include cURL support
–with-curlwrappers     EXPERIMENTAL: Use cURL for url streams
–enable-dba            Build DBA with bundled modules. To build shared DBA
extension use –enable-dba=shared
–with-qdbm=DIR         DBA: QDBM support
–with-gdbm=DIR         DBA: GDBM support
–with-ndbm=DIR         DBA: NDBM support
–with-db4=DIR          DBA: Oracle Berkeley DB 4.x or 5.x support
–with-db3=DIR          DBA: Oracle Berkeley DB 3.x support
–with-db2=DIR          DBA: Oracle Berkeley DB 2.x support
–with-db1=DIR          DBA: Oracle Berkeley DB 1.x support/emulation
–with-dbm=DIR          DBA: DBM support
–with-tcadb=DIR        DBA: Tokyo Cabinet abstract DB support
–without-cdb=DIR       DBA: CDB support (bundled)
–disable-inifile         DBA: INI support (bundled)
–disable-flatfile        DBA: FlatFile support (bundled)
–disable-dom           Disable DOM support
–with-libxml-dir=DIR   DOM: libxml2 install prefix
–with-enchant=DIR     Include enchant support.
GNU Aspell version 1.1.3 or higher required.
–enable-exif           Enable EXIF (metadata from images) support
–disable-fileinfo      Disable fileinfo support
–disable-filter        Disable input filter support
–with-pcre-dir           FILTER: pcre install prefix
–enable-ftp            Enable FTP support
–with-openssl-dir=DIR  FTP: openssl install prefix
–with-gd=DIR         Include GD support.  DIR is the GD library base
install directory BUNDLED
–with-vpx-dir=DIR     GD: Set the path to libvpx install prefix
–with-jpeg-dir=DIR     GD: Set the path to libjpeg install prefix
–with-png-dir=DIR      GD: Set the path to libpng install prefix
–with-zlib-dir=DIR     GD: Set the path to libz install prefix
–with-xpm-dir=DIR      GD: Set the path to libXpm install prefix
–with-freetype-dir=DIR GD: Set the path to FreeType 2 install prefix
–with-t1lib=DIR        GD: Include T1lib support. T1lib version >= 5.0.0 required
–enable-gd-native-ttf    GD: Enable TrueType string function
–enable-gd-jis-conv      GD: Enable JIS-mapped Japanese font support
–with-gettext=DIR    Include GNU gettext support
–with-gmp=DIR        Include GNU MP support
–with-mhash=DIR      Include mhash support
–disable-hash          Disable hash support
–without-iconv=DIR   Exclude iconv support
–with-imap=DIR       Include IMAP support. DIR is the c-client install prefix
–with-imap-ssl=DIR     IMAP: Include SSL support. DIR is the OpenSSL install prefix
–with-interbase=DIR  Include InterBase support.  DIR is the InterBase base
install directory /usr/interbase
–enable-intl           Enable internationalization support
–with-icu-dir=DIR      Specify where ICU libraries and headers can be found
–disable-json          Disable JavaScript Object Serialization support
–with-ldap=DIR       Include LDAP support
–with-ldap-sasl=DIR    LDAP: Include Cyrus SASL support
–enable-mbstring       Enable multibyte string support
–disable-mbregex         MBSTRING: Disable multibyte regex support
MBSTRING: Disable multibyte regex backtrack check
–with-libmbfl=DIR      MBSTRING: Use external libmbfl.  DIR is the libmbfl base
install directory BUNDLED
If DIR is not set, the bundled oniguruma will be used
–with-mcrypt=DIR     Include mcrypt support
–with-mssql=DIR      Include MSSQL-DB support.  DIR is the FreeTDS home
directory /usr/local/freetds
–with-mysql=DIR      Include MySQL support.  DIR is the MySQL base
directory, if no DIR is passed or the value is
mysqlnd the MySQL native driver will be used
If unspecified, the default locations are searched
–with-zlib-dir=DIR     MySQL: Set the path to libz install prefix
–with-mysqli=FILE    Include MySQLi support.  FILE is the path
to mysql_config.  If no value or mysqlnd is passed
as FILE, the MySQL native driver will be used
–enable-embedded-mysqli  MYSQLi: Enable embedded support
Note: Does not work with MySQL native driver!
Use –with-oci8=instantclient,/path/to/instant/client/lib
to use an Oracle Instant Client installation
–with-adabas=DIR     Include Adabas D support /usr/local
–with-sapdb=DIR      Include SAP DB support /usr/local
–with-solid=DIR      Include Solid support /usr/local/solid
–with-ibm-db2=DIR    Include IBM DB2 support /home/db2inst1/sqllib
–with-ODBCRouter=DIR Include support /usr
–with-empress=DIR    Include Empress support $EMPRESSPATH
(Empress Version >= 8.60 required)
Include Empress Local Access support $EMPRESSPATH
(Empress Version >= 8.60 required)
–with-birdstep=DIR   Include Birdstep support /usr/local/birdstep
Include user defined ODBC support. DIR is ODBC install base
directory /usr/local. Make sure to define CUSTOM_ODBC_LIBS and
have some odbc.h in your include dirs. f.e. you should define
following for Sybase SQL Anywhere 5.5.00 on QNX, prior to
running this configure script:
CUSTOM_ODBC_LIBS=”-ldblib -lodbc”
–with-iodbc=DIR      Include iODBC support /usr/local
–with-esoob=DIR      Include Easysoft OOB support /usr/local/easysoft/oob/client
–with-unixODBC=DIR   Include unixODBC support /usr/local
–with-dbmaker=DIR    Include DBMaker support
–enable-pcntl          Enable pcntl support (CLI/CGI only)
–disable-pdo           Disable PHP Data Objects support
–with-pdo-dblib=DIR    PDO: DBLIB-DB support.  DIR is the FreeTDS home directory
–with-pdo-firebird=DIR PDO: Firebird support.  DIR is the Firebird base
install directory /opt/firebird
–with-pdo-mysql=DIR    PDO: MySQL support. DIR is the MySQL base directory
If no value or mysqlnd is passed as DIR, the
MySQL native driver will be used
–with-zlib-dir=DIR       PDO_MySQL: Set the path to libz install prefix
–with-pdo-oci=DIR      PDO: Oracle OCI support. DIR defaults to $ORACLE_HOME.
Use –with-pdo-oci=instantclient,prefix,version
for an Oracle Instant Client SDK.
For example on Linux with 11.2 RPMs use:
With 10.2 RPMs use:
PDO: Support for ‘flavour’ ODBC driver.
include and lib dirs are looked for under ‘dir’.

‘flavour’ can be one of:  ibm-db2, iODBC, unixODBC, generic
If ‘,dir’ part is omitted, default for the flavour
you have selected will used. e.g.:


will check for unixODBC under /usr/local. You may attempt
to use an otherwise unsupported driver using the “generic”
flavour.  The syntax for generic ODBC support is:


–with-pdo-pgsql=DIR    PDO: PostgreSQL support.  DIR is the PostgreSQL base
install directory or the path to pg_config
PDO: sqlite 3 support.  DIR is the sqlite base
install directory BUNDLED
–with-pgsql=DIR      Include PostgreSQL support.  DIR is the PostgreSQL
base install directory or the path to pg_config
–disable-phar          Disable phar support
–disable-posix         Disable POSIX-like functions
–with-pspell=DIR     Include PSPELL support.
GNU Aspell version 0.50.0 or higher required
–with-libedit=DIR    Include libedit readline replacement (CLI/CGI only)
–with-readline=DIR   Include readline support (CLI/CGI only)
–with-recode=DIR     Include recode support
–disable-session       Disable session support
–with-mm=DIR           SESSION: Include mm support for session storage
–enable-shmop          Enable shmop support
–disable-simplexml     Disable SimpleXML support
–with-libxml-dir=DIR     SimpleXML: libxml2 install prefix
–with-snmp=DIR       Include SNMP support
–with-openssl-dir=DIR  SNMP: openssl install prefix
–enable-soap           Enable SOAP support
–with-libxml-dir=DIR     SOAP: libxml2 install prefix
–enable-sockets        Enable sockets support
–with-sybase-ct=DIR  Include Sybase-CT support.  DIR is the Sybase home
directory /home/sybase
–enable-sysvmsg        Enable sysvmsg support
–enable-sysvsem        Enable System V semaphore support
–enable-sysvshm        Enable the System V shared memory support
–with-tidy=DIR       Include TIDY support
–disable-tokenizer     Disable tokenizer support
–enable-wddx           Enable WDDX support
–with-libxml-dir=DIR     WDDX: libxml2 install prefix
–with-libexpat-dir=DIR   WDDX: libexpat dir for XMLRPC-EPI (deprecated)
–disable-xml           Disable XML support
–with-libxml-dir=DIR     XML: libxml2 install prefix
–with-libexpat-dir=DIR   XML: libexpat install prefix (deprecated)
–disable-xmlreader     Disable XMLReader support
–with-libxml-dir=DIR     XMLReader: libxml2 install prefix
–with-xmlrpc=DIR     Include XMLRPC-EPI support
–with-libxml-dir=DIR     XMLRPC-EPI: libxml2 install prefix
–with-libexpat-dir=DIR   XMLRPC-EPI: libexpat dir for XMLRPC-EPI (deprecated)
–with-iconv-dir=DIR      XMLRPC-EPI: iconv dir for XMLRPC-EPI
–disable-xmlwriter     Disable XMLWriter support
–with-libxml-dir=DIR     XMLWriter: libxml2 install prefix
–with-xsl=DIR        Include XSL support.  DIR is the libxslt base
install directory (libxslt >= 1.1.0 required)
–enable-zip            Include Zip read/write support
–with-zlib-dir=DIR     ZIP: Set the path to libz install prefix
–with-pcre-dir           ZIP: pcre install prefix
–enable-mysqlnd        Enable mysqlnd explicitly, will be done implicitly
when required by other extensions
Disable support for the MySQL compressed protocol in mysqlnd
–with-zlib-dir=DIR       mysqlnd: Set the path to libz install prefix


–with-pear=DIR         Install PEAR in DIR [PREFIX/lib/php]
–without-pear          Do not install PEAR


–with-zend-vm=TYPE     Set virtual machine dispatch method. Type is
–enable-maintainer-zts Enable thread safety – for code maintainers only!!
If building zend_execute.lo fails, try this switch
–enable-zend-signals   Use zend signal handling


Use GNU Pth
–with-tsrm-st          Use SGI’s State Threads
–with-tsrm-pthreads    Use POSIX threads (default)


–enable-shared=PKGS  build shared libraries default=yes
–enable-static=PKGS  build static libraries default=yes
–enable-fast-install=PKGS  optimize for fast installation default=yes
–with-gnu-ld           assume the C compiler uses GNU ld default=no
–disable-libtool-lock  avoid locking (might break parallel builds)
–with-pic              try to use only PIC/non-PIC objects default=use both
–with-tags=TAGS      include additional configurations automatic

Some influential environment variables:
CC          C compiler command
CFLAGS      C compiler flags
LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
LIBS        libraries to pass to the linker, e.g. -l<library>
CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CPP         C preprocessor
YACC        The `Yet Another C Compiler’ implementation to use. Defaults to
the first program found out of: `bison -y’, `byacc’, `yacc’.
YFLAGS      The list of arguments that will be passed by default to $YACC.
This script will default YFLAGS to the empty string to avoid a
default value of `-d’ given by some make applications.
CXX         C++ compiler command
CXXFLAGS    C++ compiler flags
CXXCPP      C++ preprocessor

Use these variables to override the choices made by `configure’ or to help
it to find libraries and programs with nonstandard names/locations.

Report bugs to the package provider.



    1. コンフィグ

–without-gdbm –

仕様目的に合わせたオプションを付けてください。必用なモジュールがぬけていたりすると PHPの再コンパイルが必要になりますのでご注意ください。
    1. コンパイル

make ; make test

  1. インストール
    make install
  2. 設定ファイルの設置と編集php.iniをサンプルからコピーして設置する。
    「php.ini-development」の2つがあるが今回は前者をつかう。 [bash]
    cp -p php.ini-production /etc/php.ini


    vim /etc/php.ini
    date.timezone = “Asia/Tokyo”
    diff /etc/php.ini php.ini-production
    < ;date.timezone =

    > date.timezone = “Asia/Tokyo”


    mkdir /etc/php.d
    vim /etc/php.d/mysql.ini


    cp -p /usr/local/src/php-5.4.8/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
    chmod 700 /etc/rc.d/init.d/php-fpm
    ls -l /etc/php-fpm.conf

  3. コマンドで確認
    php -v
    PHP 5.4.8 (cli) (built: Nov  3 2012 19:00:43)
    Copyright (c) 1997-2012 The PHP Group
    Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

  4. php-fpmの起動
    /etc/init.d/php-fpm startps axuwwww |grep php-fpm
    root     25361  0.0  0.4  23164  2496 ?        Ss   14:23   0:00 php-fpm: master process (/etc/php-fpm.conf)
    nginx    25363  0.0  3.6  34296 18540 ?        S    14:23   0:05 php-fpm: pool www
    nginx    25382  0.0  3.7  35344 19252 ?        S    14:25   0:04 php-fpm: pool www
    nginx    25404  0.0  3.8  35920 19984 ?        S    14:25   0:04 php-fpm: pool www


    netstat -nltpu
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
    tcp        0      0    *                   LISTEN      25361/php-fpm       ←これがあればとりあえずはOK
    tcp        0      0      *                   LISTEN      25293/mysqld
    tcp        0      0        *                   LISTEN      25638/nginx
    tcp        0      0        *                   LISTEN      1666/sshd
    tcp        0      0      *                   LISTEN      1698/sendmail
    udp        0      0     *                               1801/avahi-daemon
    udp        0      0      *                               1801/avahi-daemon