由于本人是通过下载源码编译安装的PHP(没有安装任何扩展库),所有一直纠结在添加扩展库的问题。
说明:本次编译只是单独编译php的扩展库,然后将编译好的php扩展库加到现在运行的php中,不对现在运行的php重新编译,所以对现在运行的php没有任何影响。
总的来说,基本步骤如下(以curl库为例):
1. 找到目前正在运行的php版本的源代码目录,如php-5.4.28 ,本人的源码目录在~/Desktop/Zhou/backup/,进入curl扩展库目录。
$ cd ~/Desktop/Zhou/backup/php-5.4.28/ext/curl
2.调用phpize程序生成编译配置文件
$ /usr/local/php/bin/phpize
3. 编译扩展库,分别执行下面的configure和make命令。
$ ./configure -with-php-config=/usr/local/php/bin/php-config
如果遇到如下问题:
configure: error: Please reinstall the libcurl distribution -easy.h should be in <curl-dir>/include/curl/
此处最好新打开一个终端来安装libcurl
下载地址:http://curl.haxx.se/download/curl-7.37.0.tar.gz
解压curl-7.37.0.tar.gz
$ ./configure --prefix=/usr/local --enable-shared
$ make
$ make install
安装好libcurl之后回到原来的终端再次执行config指令
如上步骤无误后执行make
$ make
#make成功执行后,生成的扩展库文件在当前目录的 modules 子目录下,
如 ~/Desktop/Zhou/backup/php-5.4.28/ext/curl/modules/curl.so
4. 配置php.ini文件
#将编译好的扩展库文件复制到PHP的扩展目录下
#进入到modules目录下
$ cd modules
$ cp curl.so /usr/local/php/ext
#在php.ini文件中找到设置扩展目录的位置
extension_dir = “/usr/local/php/ext/”
extension=curl.so
5. 重启apache,查看phpinfo信息,即可看到刚才添加进去的curl扩展库。