学习笔记

Study notes

Linux下编译安装PHP的PECL扩展

云逐梦15292017-06-21 18:35:00返回列表

PECL是PHP的高性能C扩展,比如当前很火热的扩展YAF,就是鸟哥编写的一个PECL的PHP框架,性能相当出色。 在网站对性能有很高要求的情况下,使用PECL中的库或者自己实现PHP C扩展,是很好的选择。

PECL是PHP的高性能C扩展,比如当前很火热的扩展YAF,就是鸟哥编写的一个PECL的PHP框架,性能相当出色。 在网站对性能有很高要求的情况下,使用PECL中的库或者自己实现PHP C扩展,是很好的选择。

PECL的扩展,可以使用命令来安装,我主要分享下编译安装 首先到PECL的网站,找到自己需要的扩展包,下载到本地,解压之,比如解压后的路径是 your-dir/ext-dir. 进入扩展源码的目录, cd your-dir/ext-dir。 在目录中运行 phpize 命令(phpize在你php的安装路经下的bin目录里),生成 configure文件 运行configure,强烈建议加上参数 --with-php-config

./configure --with-php-config=[your-php-bin-dir/php-config]

然后就是

make

make install

最后在php.ini文件中加入配置项

extension=extname.so 其中extname.so是你编译好哦生成的扩展名称,请自行更换


例子安装 redis扩展安装

wget http://pecl.php.net/get/redis-2.2.5.tgz

下载下来然后到相应的目录下面

tar xf redis-2.2.5.tgz  (解压压缩包)

cd redis-2.2.5

然后执行:/usr/local/php/bin/phpize

进行初始化

然后执行下面语句

./configure --with-php-config=/usr/local/php/bin/php-config

make  (编译)

sudo make install  (安装  这返回:Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/)

然后执行修改php.ini

sudo vim  /usr/local/php/etc/php.ini

在php.ini中添加如下两句

extension_dir = /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/

extension = redis.so

然后重启PHP

sudo /etc/init.d/php-fpm restart

redis库安装

     wget http://download.redis.io/releases/redis-3.0.7.tar.gz   (下载)

      tar xzf redis-3.0.7.tar.gz   (解压)

      cd redis-3.0.7    (进入解压目录)

      make    (编译安装)

src/redis-server

src/redis-cli

wget  http://pecl.php.net/get/memcached-2.2.0.tgz

tar xf memcache-2.2.7.tgz

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

brew install pkg-config

./configure --with-php-config=/usr/local/php/bin/php-config

./configure --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir=/opt/zlib

make

sudo make install

sudo /etc/init.d/php-fpm restart

sudo vim /etc/php.ini

extension_dir = /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/

extension = memcached.so

sudo /etc/init.d/php-fpm restart


返回
顶部