linux's docs

24.2.0: 扩展模块-bz2


0. bz2模块安装

# 找到模块源文件目录,并初始化环境
# 进入源码包解压目录中的ext/bz2目录,发现里面并没有编译用的configure等文件
cd /usr/local/src/php-5.3.3/ext/bz2/

# 这时候就需要phpize这个命令(作用是编译前初始化,生成configure)
phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
## 只是出现以上信息,说明进行顺利

# 再次查看,发现多了很多文件
ls
acinclude.m4    bz2.dsp       config.sub    install-sh       package.xml
aclocal.m4      bz2_filter.c  configure     ltmain.sh        php_bz2.def
autom4te.cache  config.guess  configure.in  Makefile.global  php_bz2.h
build           config.h.in   config.w32    missing          run-tests.php
bz2.c           config.m4     CREDITS       mkinstalldirs    tests

## 编译过程
# 编译时必须指定php-config命令路径
./configure --with-php-config=/data/server/php/bin/php-config
make && make install
# install完成后会告诉你".so"文件生成在哪个目录下

## 修改配置文件php.ini
## 找到;extension=php_bz2.dll,修改成下面
extension=bz2.so的路径(make install后提示的路径)
## PS:
# ".dll"是windows下面的模块名称,".so"是linux下的
# 或者,可以把模块文件拷贝到php.ini中"extension_dir"配置项指定的目录下,然后"extension"配置项就可以直接写模块名称,而不用写绝对路径了

Contents