phpize php-config 作用

phpize的作用可以这样理解:侦测环境(phpize工具是在php安装目录下,基于这点phpize对应了当时的php环境,所以是要根据该php的配置情况生成对应的configure文件),建立一个configure文件。必须在一个目录下去运行phpize。那么phpize就知道你的的环境是哪个目录,并且configure文件建立在该目录下。



步骤总结:



一、cd /usr/src/php源码包目录/ext/扩展目录/



二、/usr/local/php5314/bin/phpize



三、./configure –with-php-config=/usr/local/php5314/bin/php-config



四、make && make install



ps:make install会自动将生成的.so扩展复制到php的扩展目录下去,比如会提示已经安装到 /usr/local/php/php-5.5.18/lib/php/extensions/no-debug-non-zts-20121212/目录下去
五、剩下是配置php.ini

假如你的服务器上安装了多个版本php,那么需要告诉phpize要建立基于哪个版本的扩展。通过使用–with-php-config=指定你使用哪个php版本。



比如:–with-php-config=/usr/local/php524/bin/php-config



关于php-config文件:是在php编译生成后(安装好),放在安装目录下的一个文件。打开phpize文件内容会发现,里面定义好了php的安装目录等变量



prefix=’/usr/local/php’



phpize是编译安装时候生成好的,记录了当时安装的一些信息。并不能从其他地方拿个phpize来使用。



phpize是在php安装目录下的一个文件。比如我安装了两个php5.2 和php5.3那么使用phpize也要使用对应版本的phpize才行。此时使用–with-php-config有什么作用?



phpize工具一般在哪里?



当php编译完成后,php安装目录下的bin目录下会有phpize这个脚本文件。所以是去安装好的php安装目录去找。



一、phpize是干嘛的?
phpize是什么东西呢?php官方的说明:
http://php.net/manual/en/install.pecl.phpize.php
phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块
比如你想在原来编译好的php中加入memcached或者ImageMagick等扩展模块,可以使用phpize,通过以下几步工作。
二、如何使用phpize?
当php编译完成后,php的bin目录下会有phpize这个脚本文件。在编译你要添加的扩展模块之前,执行以下phpize就可以了;
比如现在想在php中加入memcache扩展模块:我们要做的只是如下几步
————————————————————————
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/webserver/php/bin/phpize
./configure –with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
————————————————————————
注意./configure 后面可以指定的是php-config文件的路径
这样编译就完成了,还需要做的是在php.ini文件中加入extension值
extension = “memcache.so”
———————————————————
注意:Cannot find config.m4.
这个错误是一个很傻的错误,解压以后需要cd到文件夹,不然phpize就会报错动态编译PHP的memcache扩展库,在执行/usr/localphp/bin/phpize时出现了错误,
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly and then rerun this script.
很明显缺少文件,需要安装。网上找了下资料。


wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz


tar -zvxf m4-1.4.9.tar.gz


cd m4-1.4.9/


./configure && make && make install


cd ../


wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz


tar -zvxf autoconf-2.62.tar.gz


cd autoconf-2.62/


./configure && make && make install


然后执行以下命令进行安装
#/usr/local/php/bin/phpize
#./configure –prefix=/usr/local/memcached –with-libevent=/usr/local/libevent –with-php-config=/usr/local/php/bin/php-config
#make && make install



张宴(blog.s135.com)大师的《Nginx 0.8.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)》
安装php(fastcgi模式)的时候,常常有这样一句命令:/usr/local/webserver/php/bin/phpize
一、phpize是干嘛的?
phpize是什么东西呢?php官方的说明:
http://php.net/manual/en/install.pecl.phpize.php
phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块
比如你想在原来编译好的php中加入memcached或者ImageMagick等扩展模块,可以使用phpize,通过以下几步工作。
二、如何使用phpize?
当php编译完成后,php的bin目录下会有phpize这个脚本文件。在编译你要添加的扩展模块之前,执行以下phpize就可以了;



tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/webserver/php/bin/phpize
./configure –with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
————————————————————————
注意./configure 后面可以指定的是php-config文件的路径
这样编译就完成了,还需要做的是在php.ini文件中加入extension值
extension = “memcache.so”




  1. php-config简介



php安装完后在bin目录下有个php-config。



php-config是一个脚本文件。用于获取所安装的php配置的信息。




  1. 使用场景



在编译php扩展时,使用下面命令用于指定php-config的路径。



./configure –with-php-config=/home/gang/php/bin/php-config




  1. php-config使用选项



在命令行执行



$ ./php-config



返回所有选项:
Options: –prefix […] PHP 所安装的路径前缀 –includes […] 列出用 -I 选项包含的所有文件 –ldflags […] PHP 编译时所使用的 LD 标志 –libs […] PHP 编译时所附加的库 –extension-dir […] 扩展库的默认路径 –include-dir […] 头文件的默认路径前缀 –php-binary […] PHP CLI 或者 CGI 可执行文件的完整路径 –php-sapis […] 列出所有可用的 SAPI 模块 –configure-options […] 重现当前 PHP 在编译时的配置选项 –version […] PHP 版本号 –vernum […] PHP 版本号,以整数表示




  1. 查看php-config代码



php-config就是一个脚本文件,可以直接查看他的代码内容



vim php-config
可以看到里面的变量在安装php脚本时已经生成了




  1. php-config简介



php安装完后在bin目录下有个php-config。
php-config是一个脚本文件。用于获取所安装的php配置的信息。




  1. 使用场景



在编译php扩展时,使用下面命令用于指定php-config的路径。
./configure –with-php-config=/home/gang/php/bin/php-config




  1. php-config使用选项



在命令行执行
$ ./php-config



返回所有选项:
Options:
–prefix […] PHP 所安装的路径前缀
–includes […] 列出用 -I 选项包含的所有文件
–ldflags […] PHP 编译时所使用的 LD 标志
–libs […] PHP 编译时所附加的库
–extension-dir […] 扩展库的默认路径
–include-dir […] 头文件的默认路径前缀
–php-binary […] PHP CLI 或者 CGI 可执行文件的完整路径
–php-sapis […] 列出所有可用的 SAPI 模块
–configure-options […] 重现当前 PHP 在编译时的配置选项
–version […] PHP 版本号
–vernum […] PHP 版本号,以整数表示




  1. 查看php-config代码



php-config就是一个脚本文件,可以直接查看他的代码内容
vim php-config



https://www.php.net/manual/zh/install.pecl.php-config.php


Category lang