安装

要激活 GD 支持,配置 PHP 时加上 --with-gd[=DIR] ,DIR 是 GD 的基本安装目录。要使用推荐的绑定的 GD 库版本(首次绑定于 PHP 4.3.0),使用 --with-gd 。要编译 GD 库,需要libpnglibjpeg

在 Windows 中,需要将 GD2 的 DLL 文件 php_gd2.dll 作为一个扩展包含在 php.ini 中。GD1 的 DLL 文件 php_gd.dll 在 PHP 4.3.2 中被删除了。此外要注意首选的真彩色图像函数,例如 imagecreatetruecolor(),需要 GD2。

Note:

要在 Windows 下启用 exif,在 php.ini 中 php_mbstring.dll 必须在 php_exif.dll 之前加载。

要在 PHP 3 中禁止 GD 支持,在配置时加上 --without-gd

要增强 GD 的能力以处理更多的图像格式,在配置 PHP 时指定 --with-XXXX 的配置开关。

所支持的图像格式
图像格式 配置开关
jpeg-6b 要激活 jpeg-6b 的支持,加上 --with-jpeg-dir=DIR .
png 要激活 png 的支持,加上 --with-png-dir=DIR 。注意,libpng 需要 zlib library,因此配置中还要加上 --with-zlib-dir[=DIR]
xpm 要激活 xpm 的支持,加上 --with-xpm-dir=DIR 。如果配置时提示找不到所需要的库,可以加上到 X11 库的路径。

Note: 当把 PHP 和 libpng 一起编译时,必须使用和 GD 库连接的同一个版本。

要增强 GD 的能力以处理更多的字体,在配置 PHP 时指定 --with-XXXX 的配置开关。

所支持的字库
字库 配置开关
FreeType 1.x 要激活 FreeType 1.x 的支持,加上 --with-ttf[=DIR]
FreeType 2 要激活 FreeType 2 的支持,加上 --with-freetype-dir=DIR
T1lib 要激活 T1lib(Type 1 字体),加上 --with-t1lib[=DIR]
本地 TrueType 字符串函数 要激活本地 TrueType 字符串函数的支持,加上 --enable-gd-native-ttf

User Contributed Notes

victornewman at mail dot ru 12-Sep-2017 07:13
apt-get isntall php7.0-gd install php7.0-gd on ubuntu but still not enabled so I try ./configure --with-gd=/usr/share/php7.0-gd but it gives -bash: no such a file or directory
I can see it with apt list --installed I can located with whereis php7.0-gd but compile doesn't work.
Problem last 6 hour, and continue
Ayonam Ray 05-Apr-2017 06:27
Once you have installed php-gd, don't forget to restart the Apache server using the following command:

    sudo service httpd restart

I struggled needlessly for over an hour trying to figure out why it wouldn't work after I had installed the packages along with all their dependencies.  :-)
Qussayyon Qamaron: Qusai.zf2@gmailcom 26-Mar-2017 02:07
#install under Ubuntu 16.04:
    * if you have access to PHP7.1:
        <sudo> apt install php7.1-gd && <sudo> systemctl restart apache2
    * if you have access to PHP7.0:
        <sudo> apt install php7.0-gd && <sudo> systemctl restart apache2

------------------------------------------------
Qussayyon Qamaron: Qusai.zf2gmailcom
marioboy1 at hotmail dot com 18-Mar-2017 01:28
I was having a gdImageCreateFromJpegCtx undefined symbol....

the solution was found in here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=470483
theonestep4 at gmail dot com 14-Dec-2016 02:00
To install on CentOS:

yum install php-gd
Anonymous 03-Nov-2016 09:52
For all who use php 7 and ubuntu

sudo apt-get install php7.0-gd
Mike K 30-Mar-2016 04:16
On Ubuntu I was missing the libpng-dev, libjpeg-dev (and in my case) libwebp-dev libraries, all gettable with apt-get.

Also once those libraries are installed, including --with-png-dir --with-jpeg-dir --with-webp-dir, without any values (i.e. =/dir) appeared to be valid ... though admittedly I didn't try without (in case the configure script autodetected them).
svestka1999 at gmail dot com 23-Feb-2016 03:20
amenadiel at gmail dot com 24-Jul-2015 06:13
While it is true that you can install GD with apt, that version comes without some of the traits of the internal, compiled version.

I noticed that when I tried to call method `imageantialias`

http://php.net/manual/es/function.imageantialias.php
Patrick 26-Mar-2015 11:35
I installes php5-gd by adding

deb http://ftp.de.debian.org/debian sid main

in /etc/apt/sources.list

then
apt-get install php5-gd

then i have troubles for starting apache2 but google find all troubles ...

cd /etc/apache2
mkdir conf.d
changes in apache2.conf :
replace
  LockFile ${APACHE_LOCK_DIR}/accept.lock
by
  Mutex file:${APACHE_LOCK_DIR} default
comment lines  NameVirtualHost (with a #)
a2enmod suexec (correction Suexec....)
a2enmod rewrite (correction erreur dav)
a2enmod dav_fs (correction erreur filesystem)
service apache2 start
leyluj21 at gmail dot com 23-Oct-2014 06:58
If you are using PHPBREW , the extension is called gd.
So you do.
```
phpbrew ext install gd
```

It will compile the extension to the core.
james dot a dot munsch at gmail dot com 06-Sep-2014 07:19
sudo apt-get install php5-gd && sudo service apache2 restart

To install under Ubuntu 14.04.
MIguel G 14-Jul-2013 02:43
If your are suffering with PHP53 on CentOS and GD,
just
yum install php53-gd
alejo dot jm at gmail dot com 20-Jul-2012 03:47
On Macox lion with mac port just use:
sudo port install php5-gd
florian 31-Jul-2011 11:50
People having difficulties setting the --with-libdir option needs to set it like this :

--with-libdir=lib64

That option works fine. Doing --with-libdir=/usr/lib64 doesn't work because the configure script prepends the --prefix option before the --with-libdir option. So, doing --with-libdir=/usr/lib64 makes the configure script to look for libs in /usr/usr/lib64, which is wrong of course, and not in /usr/lib64.
Joseph Marlin 23-Jun-2011 03:07
I also had to install the libgd package in addition to php5-gd:

sudo apt-get install libgd2-xpm-dev*
octopus at logicaloctopus dot com 17-Apr-2011 09:07
I was running PHP on a SUSE box on amazon EC2.
to get gd to work all I had to do was to run:
> yast -i php5_gd

and when that completed I just restarted apache. voila!
boly38 at gmail dot com 17-Mar-2011 02:25
To get GD bundled under Ubuntu, the way to recompile php5 with gd is described here (french) http://doc.ubuntu-fr.org/modules_php#php5-gd
elassoto at hotmail dot com 10-Sep-2010 10:54
If you have already compiled PHP and want to recompile '--with-gd', don't forget to run 'make clean' first!
msc at homofaber dot com 30-Oct-2008 04:45
It should be noted that it might be pretty easy to install gd without the need to recompile php, when using debian:

apt-get install php5-gd
mike at clove dot com 18-Apr-2008 06:40
jpeg [jpg] file processing doesn't work unless you build php with '--with-jpeg-dir=<path to jpeg library>'.

It still doesn't work unless <path to jpeg library> points to the directory holding the directory holding the library unless libjpeg.<whatever> is in either /usr/lib or /usr/local/lib. For instance, on a mac with libjpeg.a installed via mac ports, you need '/opt/local' rather than '/opt/local/lib'