编译安装PHP-GD

本文详细介绍如何通过源码编译方式为已安装的PHP环境手动添加GD库支持,包括安装必要的前置库如freetype、jpegsrc和libpng等,并配置PHP使其能够正确加载GD扩展。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

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

1. freetype

2tar jxvf freetype-2.4.0.tar.bz2
3cd freetype-2.4.0
4./configure --prefix=/usr/local/freetype && make && make install

2. jpegsrc

2tar zxvf jpegsrc.v9.tar.gz
3cd jpeg-9
4 CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/jpeg && make && make install
5mkdir -p /usr/local/jpeg/include
6mkdir -p /usr/local/jpeg/lib
7mkdir -p /usr/local/jpeg/bin
8mkdir -p /usr/local/jpeg/man/man1

3. libpng

2tar zxvf libpng-1.2.50.tar.gz
3cd libpng-1.2.50
4 CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/libpng && make && make install

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

1cd php-5.3.6
2cd ext
3cd gd

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

1/usr/local/php/bin/phpize

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

1./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
2或者
3./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
4make && make install

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

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

1service nginx restart
2/usr/local/php/bin/php -m

console列出:

01[root@nowamagic gd]# /usr/local/php/bin/php -m
02[PHP Modules]
03Core
04ctype
05date
06dom
07ereg
08fileinfo
09filter
10gd
11……

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

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

1killall php-fpm
2/usr/local/php/sbin/php-fpm

phpinfo()一下,看看。

 
 
转至:http://www.nowamagic.net/librarys/veda/detail/2610
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值