【CentOS】php编译安装gd库
一、准备工作
使用之前服务器按源码最小化安装完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库的更多相关文章
- 烂泥:centos单独编译安装gd库
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天一直在弄一个商城系统,该系统的源码及数据库都已经上传并创建完毕.但是在安装该系统时,却提示缺少gd库.如下: 使用php探针查看,发现php确实没 ...
- 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 ...
- PHP 编译安装 gd 库
作者博文地址:https://www.cnblogs.com/liu-shuai/ 安装gd依赖库 freetype wget http://download.savannah.gnu.org/rel ...
- linux centos系统 php安装GD库扩展
yum --enablerepo=remi-php56 install php-gd php-mysql php-mbstring php-xml php-mcrypt //安装GD库扩展 servi ...
- 已安装php 编译安装 gd库拓展模块
参考资料:http://wenku.baidu.com/link?url=EgXFShYxeJOZSYNQ_7RCBC-6X8OcRRCqVm4qCv49uBk57d6vLBoUpfYdQ-KqJRs ...
- Centos安装GD库
tar zxvf ncurses-5.6.tar.gz 进入目录 cd ncurses-5.6 生成 makefile文件,再进一步编译 ./configure --prefix=/usr --wit ...
- Linux下用Intel编译器编译安装NetCDF-Fortan库(4.2以后版本)
本来这个问题真的没必要写的,可是真的困扰我太久%>_<%,决定还是记录一下. 首先,最权威清晰的安装文档还是官方的: Building the NetCDF-4.2 and later F ...
- 转:在CentOS下编译安装GCC
转:https://teddysun.com/432.html 在CentOS下编译安装GCC 技术 秋水逸冰 发布于: 2015-09-02 更新于: 2015-09-02 6519 次围观 ...
- centos下编译安装lnmp
centos下编译安装lnmp 本文以centos为背景在其中编译安装nginx搭建lnmp环境. 编译安装nginx时,需要事先安装 开发包组"Development Tools" ...
随机推荐
- Asp.Net Web API(二)
创建一个Web API项目 第一步,创建以下项目 当然,你也可以创建一个Web API项目,利用 Web API模板,Web API模板使用 ASP.Net MVC提供API的帮助页. 添加Model ...
- 《TCP-IP详解卷2:实现》【PDF】下载
<TCP-IP详解卷2:实现>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230062539 内容简介 <TCP/IP详解·卷2 ...
- 随笔:JavaScript函数中的对象----arguments
关于arguments 调用函数时,如果需要传参,其实参数就是一个数组,在函数体的内置对象arguments可以访问这个数组,如: arguments[0]:第一个参数 arguments[1]:第二 ...
- 迷宫问题 Maze 4X4 (sloved by backtrack)
Description 给定一个N*N的迷宫中,(0,0)为起始点,(N-1,N-1)为目的地,求可通往目的地的多个解 思路 这道题其实就是简单的DFS,一路探索到底,没路就回溯到交叉口. #incl ...
- CSS文字不换行,溢出省略
white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
- 如何用VSCode愉快的写Python
在学习Python的过程中,一直没有找到比较趁手的第三方编辑器,用的最多的还是Python自带的编辑器.由于本人用惯了宇宙第一IDE(Visual Studio),所以当Visual Studio C ...
- 【Zookeeper】源码分析目录
Zookeeper源码分析目录如下 1. [Zookeeper]源码分析之序列化 2. [Zookeeper]源码分析之持久化(一)之FileTxnLog 3. [Zookeeper]源码分析之持久化 ...
- k-近邻算法实例
1. 简单例子 步骤 1.1 计算已知点和被求点的距离 1.2 按距离递增排序 1.3 求出距离最近的前k个点的类别最大值作为目标分类 from numpy import * import opera ...
- PHP (超文本预处理器)
PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超为本预处理器")是一种通用开源脚本语言.语法吸收了C语言.java和Rerl的特点,利于学习,使 ...
- php-redis 操作类 封装
<?php /** * redis操作类 * 说明,任何为false的串,存在redis中都是空串. * 只有在key不存在时,才会返回false. * 这点可用于防止缓存穿透 * */ cla ...