一、准备工作

使用之前服务器按源码最小化安装完nginx、php-fpm,没有安装gd库,下面介绍下gd库的安装。

gd库是一个开源的图像处理库,它通过提供一系列用来处理图片的API,使其可以用来创建图表、图形、缩略图以及其他图像的处理操作。在安装gd库之前,需要安装libpng、jpegsrc、freetype这三款软件。

安装libpng

libpng软件包包含libpng库,这些库被可以被其它软件用于处理png后缀的图片文件。执行以下命令下载libpng,如下:

wget  http://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.32/libpng-1.6.32.tar.gz

继续执行以下命令进行解压、配置安装:

tar -xf libpng-1.6.32.tar.gz

cd libpng-1.6.32

./configure

make

make install

安装成功后显示如下:

安装jpegsrc

jpegsrc软件包包含jpeg库,这些库被可以被其它软件用于处理jpg或jpeg后缀的图片文件。

执行以下命令下载jpegsrc,如下:

wget  http://www.ijg.org/files/jpegsrc.v9a.tar.gz

继续执行以下命令进行解压、配置安装:

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

继续执行以下命令进行解压、配置安装:

tar -xf freetype-2.5.5.tar.gz

cd freetype-2.5.5

./configure

make && make install

二、安装gd

下面进行gd库的编译安装,先进入php源码包的/ext/gd/目录下,如下:

先在该目录下执行/usr/local/bin/phpize,显示如下说明执行成功:

注意:这一步可能出错,如下图:

遇到上述情况,最简单的解决方法执行下面两句命令:

yum -y install m4

yum -y install autoconf

接着再执行/usr/local/bin/phpize就可以了。

phpize命令是根据php的安装位置来决定的,这里的php安装时使用默认安装位置,所以执行命令如上。当需要添加一些模块,但是又不想重新编译php时,就可以使用phpize命令。

接着执行以下命令配置、安装:

./configure  --with-php-config=/usr/local/bin/php-config

make && make install

gd库安装成功后会在/usr/local/lib/php/extensions/no-debug-non-zts-20131226目录下生成gd.so文件,如下:

接着修改下配置文件,修改/usr/local/lib/php.ini文件,在该文件的Dynamic Extensions模块下添加一行extension=gd.so,如下:

如果不知道php.ini文件的位置,我们可以通过php --ini命令查看。

安装配置完成后,检查下gd库是否安装成功,执行命令:/usr/local/bin/php -m |grep gd查看,如下:

可以看到gd模块已经被加载了,现在可以重启nginx和php-fpm,然后再看看gd库是否安装成功,执行命令如下:

/usr/local/nginx/sbin/nginx -s reload

/etc/init.d/php-fpm restart

重启后通过php主页信息能看到gd模块证明已成功。

在/opt/soft/php-5.6.2/ext/目录下,还有其他许多模块,如下,如果要安装其他模块,过程也类似上面gd模块的安装过程。

【CentOS】php编译安装gd库的更多相关文章

  1. 烂泥:centos单独编译安装gd库

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天一直在弄一个商城系统,该系统的源码及数据库都已经上传并创建完毕.但是在安装该系统时,却提示缺少gd库.如下: 使用php探针查看,发现php确实没 ...

  2. php5.6.30环境报错Call to undefined function ImageCreate() 编译安装 gd库

    php5..30环境报错Call to undefined function ImageCreate() 编译安装 gd库 发现php5..30没有加载gd库 [root@cn_vs_web04:/u ...

  3. PHP 编译安装 gd 库

    作者博文地址:https://www.cnblogs.com/liu-shuai/ 安装gd依赖库 freetype wget http://download.savannah.gnu.org/rel ...

  4. linux centos系统 php安装GD库扩展

    yum --enablerepo=remi-php56 install php-gd php-mysql php-mbstring php-xml php-mcrypt //安装GD库扩展 servi ...

  5. 已安装php 编译安装 gd库拓展模块

    参考资料:http://wenku.baidu.com/link?url=EgXFShYxeJOZSYNQ_7RCBC-6X8OcRRCqVm4qCv49uBk57d6vLBoUpfYdQ-KqJRs ...

  6. Centos安装GD库

    tar zxvf ncurses-5.6.tar.gz 进入目录 cd ncurses-5.6 生成 makefile文件,再进一步编译 ./configure --prefix=/usr --wit ...

  7. Linux下用Intel编译器编译安装NetCDF-Fortan库(4.2以后版本)

    本来这个问题真的没必要写的,可是真的困扰我太久%>_<%,决定还是记录一下. 首先,最权威清晰的安装文档还是官方的: Building the NetCDF-4.2 and later F ...

  8. 转:在CentOS下编译安装GCC

    转:https://teddysun.com/432.html 在CentOS下编译安装GCC 技术  秋水逸冰  发布于: 2015-09-02  更新于: 2015-09-02  6519 次围观 ...

  9. centos下编译安装lnmp

    centos下编译安装lnmp 本文以centos为背景在其中编译安装nginx搭建lnmp环境. 编译安装nginx时,需要事先安装 开发包组"Development Tools" ...

随机推荐

  1. 前端笔记---塌陷top

    一.在设置盒子div的子元素的外边框margin-top,子元素属性不起作用,父元素下沉: <!DOCTYPE html> <html lang="en"> ...

  2. 自学Zabbix3.8.2-可视化Visualisation-maps网络地图

    自学Zabbix3.8.2-可视化Visualisation-maps网络地图 可以简单的理解为动态网络拓扑图,可以针对业务来配置zabbix map,通过map可以了解应用的整体状况:服务器是否异常 ...

  3. Django的缓存机制

    由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5 ...

  4. 以List为例浅谈C#的学习方法

    前言:关于学习方法的讨论其实是个比较模糊的概念,对于List的介绍的资料其实已经很多了,但是一般是介绍List本身,我打算分享的是,以温故List为例,来获取新知识的这么一个过程.这里的新知识也不是什 ...

  5. sql基础题目测试及正确答案

    在网上做了一套基本的sql题目,以下是我的写的答案,适合基础人员练练 --创建测试数据 use test create table Student(S# varchar(10),Sname nvarc ...

  6. SoapUI模拟REST MockService

    一.新建REST工程 二.添加URI 物流查询接口测试地址:http://www.kuaidi100.com/query?type=快递公司代号&postid=快递单号 三.输入入参,测试一下 ...

  7. 开源一个上架 App Store 的相机 App

    Osho 相机是我独立开发上架的一个相机 App,App Store地址:https://itunes.apple.com/cn/app/osho/id1203312279?mt=8.它支持1:1,4 ...

  8. API接口开发简述

    作为最流行的服务端语言PHP(PHP: Hypertext Preprocessor),在开发API方面,是很简单且极具优势的.API(Application Programming Interfac ...

  9. arcgis api for js热力图优化篇-不依赖地图服务

    前面我写过一篇文章,介绍如何实现arcgis api的热力图效果,但是依赖arcgis server发布的地图服务来获取热力图的数据源.实际应用中,很多业务数据来源数据库,并不一定是从地图服务来获取的 ...

  10. Xamarin android CardView的使用详解

    android 5.0新增加的一个控件CardView,在support v7兼容包中,意思就是卡片View,虽然可以设置阴影,圆角等等样式,但是我们也可以自己写出来,谷歌工程师之所以出这个,肯定是帮 ...