下载zlib(因为php的memcache扩展模块使用了函数» zlib 来支持数据压缩,因此安装此模块需要安装Zlib模块。 ):http://sourceforge.net/projects/libpng/files/zlib/1.2.5/zlib-1.2.5.tar.gz/download
下载memcache的php扩展:http://pecl.php.net/get/memcache-3.0.6.tgz
由于Ubuntu11.04默认没有安装zlib,所以首先安装 zlib
tar -xzvf zlib-
1.2
.
5
.
tar
.
gz
cd zlib- 1.2 . 5
./ configure --prefix =/ usr / dev / zlib
make
make installl
cd zlib- 1.2 . 5
./ configure --prefix =/ usr / dev / zlib
make
make installl
然后安装memcache
tar -xzvf memcache-
3.0
.
6
.
tgz
cd memcache- 3.0 . 6
/
usr
/
dev
/
php-
5.3
.
6
/
bin
/
phpize
//
执行成功,会在当前目录生成一个configure文件
./ configure --with-php-config =/ usr / dev / php- 5.3 . 6 / bin / php-config --with-zlib- dir =/ usr / dev / zlib --with-apxs =/ usr / dev / apache / bin / apxs --with-gettext --enable-socket --enable-memcache --enable-sysvshm --enable-shmop
make
make install
cd memcache- 3.0 . 6
/
usr
/
dev
/
php-
5.3
.
6
/
bin
/
phpize
//
使用phpize生成configure文件 ,phpize是编译pecl食用的,phpize一般在php安装目录的bin目录下面,可以参考此处:http:
//
www
.
cnblogs
.
com
/
wangtao_20
/
archive
/
2011
/
3
/
16
.
html
这一步可能会报如下错误:Cannot find autoconf . Please check your autoconf installation
这是因为还没有安装autoconf或者phpize里面的autoconf设置的不对,首先使用dpkg -l 检查是否已经安装autoconf,如果没有安装,则需要下载安装:
下载 autoconf http: // ftp . gnu . org / gnu / autoconf / autoconf- 2.68 . tar . gz
tar -xzvf autoconf- 2.68 . tar . gz
cd autoconf- 2.68
./ configure --prefix =/ usr / dev / pecl / autoconf
make
make install 安装成功后需要更改phpsize
sudo gedit / usr / dev / php- 5.3 . 6 / bin / phpize
找到test -z " $PHP_AUTOCONF " 和 test -z " $PHP_AUTOHEADER " , 此例中如下:
test -z " $PHP_AUTOCONF " && PHP_AUTOCONF = autoconf
test -z " $PHP_AUTOHEADER " && PHP_AUTOHEADER = autoheader
更改为:
test -z " $PHP_AUTOCONF " && PHP_AUTOCONF =/ usr / dev / pecl / autoconf / bin / autoconf
test -z " $PHP_AUTOHEADER " && PHP_AUTOHEADER =/ usr / dev / pecl / autoconf / bin / autoheader
保存退出
回到memcache- 3.0 . 6 目录
这一步可能会报如下错误:Cannot find autoconf . Please check your autoconf installation
这是因为还没有安装autoconf或者phpize里面的autoconf设置的不对,首先使用dpkg -l 检查是否已经安装autoconf,如果没有安装,则需要下载安装:
下载 autoconf http: // ftp . gnu . org / gnu / autoconf / autoconf- 2.68 . tar . gz
tar -xzvf autoconf- 2.68 . tar . gz
cd autoconf- 2.68
./ configure --prefix =/ usr / dev / pecl / autoconf
make
make install 安装成功后需要更改phpsize
sudo gedit / usr / dev / php- 5.3 . 6 / bin / phpize
找到test -z " $PHP_AUTOCONF " 和 test -z " $PHP_AUTOHEADER " , 此例中如下:
test -z " $PHP_AUTOCONF " && PHP_AUTOCONF = autoconf
test -z " $PHP_AUTOHEADER " && PHP_AUTOHEADER = autoheader
更改为:
test -z " $PHP_AUTOCONF " && PHP_AUTOCONF =/ usr / dev / pecl / autoconf / bin / autoconf
test -z " $PHP_AUTOHEADER " && PHP_AUTOHEADER =/ usr / dev / pecl / autoconf / bin / autoheader
保存退出
回到memcache- 3.0 . 6 目录
./ configure --with-php-config =/ usr / dev / php- 5.3 . 6 / bin / php-config --with-zlib- dir =/ usr / dev / zlib --with-apxs =/ usr / dev / apache / bin / apxs --with-gettext --enable-socket --enable-memcache --enable-sysvshm --enable-shmop
make
make install
打开php.ini文件,此例中为/usr/dev/php-5.3.6/lib/php.ini
添加如下两行:
extension_dir = /usr/dev/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626"
extension=memcache.so
当然也可以将
/usr/dev/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626/memcache.so 复制到 /usr/dev/php5.3.6/lib/php/extensions/memcache.so
或者创建一个指向/usr/dev/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626/memcache.so 硬链接/usr/dev/php5.3.6/lib/php/extensions/memcache.so
然后再php.ini添加如下两行:
extension_dir = /usr/dev/php5.3.6/lib/php/extensions"
extension=memcache.so
关闭保存php.ini,重启apache,就可以在php代码中使用memcache扩展了