Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5542503
  • 博文数量: 763
  • 博客积分: 12108
  • 博客等级: 上将
  • 技术积分: 15717
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-28 21:21
个人简介

业精于勤,荒于嬉

文章分类

全部博文(763)

文章存档

2018年(6)

2017年(15)

2016年(2)

2015年(31)

2014年(14)

2013年(87)

2012年(75)

2011年(94)

2010年(190)

2009年(38)

2008年(183)

2007年(28)

分类: 服务器与存储

2013-03-29 13:35:22

一,phpize 的好处
什么时候我们要用phpize呢?我们在安装php时:
'./configure' '--prefix=/usr/local/php' '--with-mysql=/usr/local/mysql' '--with-zlib-dir' '--with-freetype-dir=/usr' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--with-gd' '--enable-ftp' '--with-iconv' '--with-gettext' '--with-curl' '--enable-fastcgi' '--with-openssl'
后面根的参数是我们要的模块,但是随着工作的需要,我们还要在加些模块,又不想重新编译php,这些我们就可以用phpize了。


二,安装php模块
下面我以soap安装为例子
cd /home/zhangy/php-5.2.6/ext/soap                #ext目录下面放的是php的模块库
/usr/local/php/bin/phpize
#确定php-config文件在不在,调用php-config,安装后.so文件会自动放到extension_dir里面
./configure --enable-soap  --with-php-config=/usr/local/php/bin/php-config
make && make install
安装完后会有这样的东西
See any operating system documentation about shared libraries for?more information, such as the ld(1) and ld.so(8) manual pages.?----------------------------------------------------------------------
Build complete.?Don't forget to run 'make test'.
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/
三,查看.so文件,以及修改php.ini
cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/
ls -al |grep soap
-rwxr-xr-x 1 root  root   763334 Feb  9 10:51 soap.so
vi /usr/local/php/lib/php.ini
在加载模块的地加上一行extension=soap.so
四,重起apache或者phpcgi或者其他
?



***************************************************************************************************************

4. 01.

phpize 是属于 php-devel 中的东西,主要是设定 php 外挂模块的一些设定

例如你的php不支持mysql, mbstring等

实例应用:
环境php5.2.6, 不支持mysql扩展
假如php的源码包在/usr/local/src/php-5.2.6
php安装目录是/usr/local/php

# cd /usr/local/src/php-5.2.6
# cd ./ext/mysql
# /usr/local/php/bin/phpize

# ./configure –with-php-config=/usr/local/php/bin/php-config
# make
# make install
这个时候你会看到mysql.so被拷贝到某个目录, 把mysql.so拷贝到你的extension_dir指向的路径, 在php.ini里增加extension=mysql.so
重启web服务器, 看一下phpinfo, 应该支持mysql了, 完毕!

注意: 在执行/usr/local/php/bin/phpize的时候可能会提示某些错误, 例如:Cannot find autoconf, 那就根据错误提示把相关的软件安装, RHEL系列使用yum -y install autoconf就可以了
其他错误, 请留言给我!

所以安装 php-devel 相关套件就会有 phpize 可以使用 (档案预设存放于 /usr/bin/phpize )
phpize 命令是用来准备 PHP 外挂模块的编译环境的。下面例子中,外挂模块的源程序位于 extname 目录中:
# cd extname
# phpize
# ./configure (注一)
# make
# make install
成功的安装将建立 extname.so 并放置于 PHP 的外挂模块目录中 (预设存放于 /usr/lib/php/modules/ 内) 。
需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此外挂模块。

注一:
如在执行 ./configure 时出现 not find –with-php-config 时,
可重下以下指令,因 –with-php-config 预设在 /usr/bin/php-config 可找到
./configure –with-php-config=/usr/bin/php-config
需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此扩展库。



阅读(1750) | 评论(0) | 转发(1) |
0

上一篇:SQL Date 函数

下一篇:order by与索引

给主人留下些什么吧!~~