优选主流主机商
任何主机均需规范使用

如何在CentOS系统下通过PHP扩展方式快速安装GD库指南

网站的第二台服务器跑的的环境主要是Python/Ruby,有时也需要简单跑跑PHP脚本,所以也安装了PHP,环境是Nginx+php-fpm,PHP是源码编译安装的,所以是最小化安装,甚至连mysqli扩展都没有。今天需要用到GD库,才发现没GD库环境,所以需要安装这个扩展。对付单个扩展,单独编译动态加载是比较方便快捷的。安装过程也比较繁杂,这个记录一下,方便后来者。

首先说明,我的PHP是源码编译安装的,可以参看 以源码编译的方式安装PHP与php-fpm。

先安装 gd 前置库 : freetype ,jpegsrc,libpng。

1. freetype

代码如下:

wget “http://download.savannah.gnu.org/releases/freetype/freetype-2.4.0.tar.bz2”

tar jxvf freetype-2.4.0.tar.bz2

cd freetype-2.4.0

./configure –prefix=/usr/local/freetype && make && make install

2. jpegsrc

代码如下:

wget “http://www.ijg.org/files/jpegsrc.v9.tar.gz”

tar zxvf jpegsrc.v9.tar.gz

cd jpeg-9

CFLAGS=”-O3 -fPIC” ./configure –prefix=/usr/local/jpeg && make && make install

mkdir -p /usr/local/jpeg/include

mkdir -p /usr/local/jpeg/lib

mkdir -p /usr/local/jpeg/bin

mkdir -p /usr/local/jpeg/man/man1

3. libpng

代码如下:

wget “http://downloads.sourceforge.net/project/libpng/libpng12/1.2.50/libpng-1.2.50.tar.gz?r=http%3A%2F%2Fwww.libpng.org%2Fpub%2Fpng%2Flibpng.html&ts=1376631135&use_mirror=nchc”

tar zxvf libpng-1.2.50.tar.gz

cd libpng-1.2.50

CFLAGS=”-O3 -fPIC” ./configure –prefix=/usr/local/libpng && make && make install

接下来需要cd到php源码的 gd 目录,否则会报 cannot find config.m4 之类的错误。

代码如下:

cd php-5.3.6

cd ext

cd gd

然后再这个目录执行命令 /usr/local/php/bin/phpize。什么时候需要用到 phpize 呢?当我们需要再加些模块,又不想重新编译php,这些我们就可以用phpize了。我的PHP安装在 /usr/local/php/ 这个目录里,可以根据个人情况修改。

代码如下:

/usr/local/php/bin/phpize

现在可以进行单独编译安装了:

代码如下:

./configure –with-php-configure=/usr/local/php/bin/php-config –with-jpeg-dir=/usr/local/jpeg –with-png-dir=/usr/local/libpng –with-freetype-dir=/usr/local/freetype

或者

./configure –with-php-config=/usr/local/php/bin/php-config –with-jpeg-dir=/usr/local/jpeg –with-png-dir=/usr/local/libpng –with-freetype-dir=/usr/local/freetype

make && make install

接着修改php.ini文件 在 ;extension=php_zip.dll 下面添加一行 extension=gd.so

重启 Nginx 之后再看看是否安装成功了。再执行 /usr/local/php/bin/php -m 查看gd模块是否加载成功。

代码如下:

service nginx restart

/usr/local/php/bin/php -m

console列出:

代码如下:

[root@nowamagic gd]# /usr/local/php/bin/php -m

[PHP Modules]

Core

ctype

date

dom

ereg

fileinfo

filter

gd

……

看到gd了,说明gd库安装成功。

接下来只要重启 php-fpm 即可:

代码如下:

killall php-fpm

/usr/local/php/sbin/php-fpm

phpinfo()一下,看看。

OK,安装成功。

未经允许不得转载:搬瓦工中文网 » 如何在CentOS系统下通过PHP扩展方式快速安装GD库指南