目前服务器的环境是nginx+php-fpm,php使用源码最小化安装,所以就没有安装gd库。尽管没有安装gd库,但是我们还是可以通过单独编译安装gd库。
下面我们就开始来介绍如何给已经编译好的php环境安装gd库。gd库的安装分以下几个步骤:
1、gd库是什么
2、安装libpng
3、安装freetype
4、安装jpegsrc
5、安装gd库
6、检查gd库安装情况
一、gd库是什么
gd库是一个开源的图像处理库,它通过提供一系列用来处理图片的API,使其可以用来创建图表、图形、缩略图以及其他图像的处理操作。
gd库支持JPG、PNG、GIF等常见的图片格式。所以在安装gd库之前,我们需要安装libpng、jpegsrc、freetype这三款软件。
二、安装libpng
libpng软件包包含libpng库,这些库被可以被其它软件用于处理png后缀的图片文件。
下载libpng,如下:
wget http://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.16/libpng-1.6.16.tar.gz
安装libpng,libpng的安装我们使用默认的选项。如下:
tar -xf libpng-1.6.16.tar.gz cd libpng-1.6.16 ./configure make make install
注意:如果系统中已经安装了zlib,要注意zlib和libpng版本之间的兼容性问题,目前已知zlib-1.2.8和libpng-1.5.20可以正常安装,但是与libpng-1.6.16安装时,就会报如下错误:
对此有篇文章对此问题进行了一些描述,如下:
http://stackoverflow.com/questions/19738464/pngfix-c2151-undefined-reference-to-inflateres
三、安装jpegsrc
jpegsrc软件包包含jpeg库,这些库被可以被其它软件用于处理jpg或jpeg后缀的图片文件。
下载jpegsrc,如下:
wget http://www.ijg.org/files/jpegsrc.v9a.tar.gz
安装jpegsrc,jpegsrc的安装我们使用默认的选项。如下:
tar -xf jpegsrc.v9a.tar.gz cd jpeg-9a/ ./configure make && make install
四、安装freetype
freetype库是一个完全免费开源的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType、OpenType、Type1、CID、CFF、Windows FON/FNT、X11 PCF等。
下载freeType,如下:
wget http://ftp.twaren.net/Unix/NonGNU/freetype/freetype-2.5.5.tar.gz
安装freetype,freetype的安装我们使用默认的选项。如下:
tar -xf freetype-2.5.5.tar.gz cd freetype-2.5.5 ./configure make && make install
编译安装GD库
cd /usr/src/php-5.6.2/ext/gd 如果之前编译过记得一定要make clean!!!! make clean phpize ./configure --with-freetype-dir=/usr/local/ --with-jpeg-dir=/usr/local/ --with-png-dir=/usr/local/ --with-php-config=/data/php/bin/php-config make make install Installing shared extensions: /data/php/lib/php/extensions/no-debug-non-zts-20131226/ Installing header files: /data/php/include/php/ ll /data/php/lib/php/extensions/no-debug-non-zts-20131226/ vim /data/php/etc/php.ini 添加 extension_dir = "/data/php/lib/php/extensions/no-debug-non-zts-20131226/" extension=gd.so 重启php /etc/init.d/php-fpm restart php -m | grep gd gd