使用phpize为php添加动态扩展的例子

发布时间:2020-07-09编辑:脚本学堂
使用phpize为php添加动态扩展的例子,包括编译eAccelerator扩展、编译memcache扩展、编译imagick扩展等,有需要的朋友可以参考下。

使用phpize为php添加动态扩展的例子,包括编译eAccelerator扩展、编译memcache扩展、编译imagick扩展等,有需要的朋友可以参考下。

首先,安装autoconf工具
 

复制代码 代码如下:
Ubuntu:apt-get install autoconf
centosyum install autoconf

以mbstring模块为例

进入源码目录:
cd /php/ext/mbstring
运行:
/usr/local/php/bin/phpize
会生成一个configure脚本和相关文件

接下来编译扩展
 

复制代码 代码如下:
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

编译PDO_mysql扩展

复制代码 代码如下:
tar xzvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL_1.0.2
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

编译eAccelerator扩展

复制代码 代码如下:
tar xjvf eaccelerator-0.9.5.tar.bz2
cd eacceleraotr-0.9.5
/usr/local/php/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config
make && make install

#创建eAccelerator缓存目录
 

复制代码 代码如下:
mkdir /usr/local/php/ecache

编译memcache扩展

复制代码 代码如下:
tar -zxvf memcache-2.2.5.tgz
cd memcache-2.2.5
/usr/local/php/bin/phpize
/configure  --with-php-config=/usr/local/php/bin/php-config
make & make install

编译imagick扩展

复制代码 代码如下:
tar -zxvf imagick-2.2.2.tgz
cd imagick-2.2.2/
/usr/local/php/bin/phpize
/configure  --with-php-config=/usr/local/php/bin/php-config
make & make install

编译完成,生成一个目录 /usr/local/php/lib/php/extension/no- debug-non-zts-20060613/

修改vim /usr/local/php/lib/php.ini
 

复制代码 代码如下:
extension_dir = "./php/extensions/no- debug-non-zts-20060613"

重启apachephp-fpm

php-5.2.13的源码包 包含以下扩展:
bcmath      ext_skel_win32.php  json        ncurses       pdo_pgsql   snmp       tokenizer
bz2         fbsql               ldap        oci8          pdo_sqlite  soap       wddx
calendar    fdf                 libxml      odbc          pgsql       sockets    xml
com_dotnet  filter              mbstring    openssl       posix       spl        xmlreader
ctype       ftp                 mcrypt      pcntl         pspell      sqlite     xmlrpc
curl        gd                  mhash       pcre          readline    standard   xmlwriter
date        gettext             mime_magic  pdo           recode      sybase     xsl
dba         gmp                 ming        pdo_dblib     reflection  sybase_ct  zip
dbase       hash                msql        pdo_firebird  session     sysvmsg    zlib
dom         iconv               mssql       pdo_mysql     shmop       sysvsem
exif        imap                mysql       pdo_oci       simplexml   sysvshm
ext_skel    interbase           mysqli      pdo_odbc      skeleton    tidy