PHP 8.4.0 RC2 available for testing

安装

要激活 GD 支持,配置 PHP 时加上 --with-gd[=DIR],DIR 是 GD 的基本安装目录。要使用推荐的绑定的 GD 库版本,使用 --with-gd。要编译 GD 库,需要libpnglibjpeg。 自 PHP 7.4.0 起,--with-gd 变为 --enable-gd (是否启用扩展) 和 --with-external-gd (选择使用外部 libgd,而不是绑定的)。

在 Windows 中,需要将 GD 的 DLL 文件 php_gd.dll 作为一个扩展包含在 php.ini 中。 在 PHP 8.0.0 之前,DLL 被命名为 php_gd2.dll

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

所支持的图像格式
图像格式 配置开关
avif 要激活 avif 的支持,加上 --with-avif。 从 PHP 8.1.0 起可用。
jpeg 要激活 jpeg 的支持,加上 --with-jpeg-dir=DIR。 支持 Jpeg 6b、7 或 8。 从 PHP 7.4.0 开始,使用 --with-jpeg 替代。
png 要激活 png 的支持,加上 --with-png-dir=DIR。注意,libpng 需要 zlib library,因此配置中还要加上 --with-zlib-dir[=DIR]。 从 PHP 7.4.0 开始,--with-png-dir--with-zlib-dir 已经移除。 需要安装 libpngzlib
xpm 要激活 xpm 的支持,加上 --with-xpm-dir=DIR。 如果配置时提示找不到所需要的库,可以加上 X11 库的路径。 从 PHP 7.4.0 开始,使用 --with-xpm 替代。
webp 要激活 xpm 的支持,加上 --with-webp-dir=DIR。 从 PHP 7.4.0 开始,使用 --with-webp 替代。

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

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

所支持的字库
字库 配置开关
FreeType 2 要激活 FreeType 2 的支持,加上 --with-freetype-dir=DIR。 从 PHP 7.4.0 开始使用 --with-freetype 代替,它依赖于 pkg-config
本地 TrueType 字符串函数 要激活本地 TrueType 字符串函数的支持,加上 --enable-gd-native-ttf。 (此选项无效,自 PHP 7.2.0 起已被删除。)

add a note

User Contributed Notes 18 notes

up
6
msc at homofaber dot com
15 years ago
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
up
4
Qussayyon Qamaron: Qusai.zf2@gmailcom
7 years ago
#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
up
5
james dot a dot munsch at gmail dot com
10 years ago
sudo apt-get install php5-gd && sudo service apache2 restart

To install under Ubuntu 14.04.
up
4
florian
13 years ago
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.
up
3
Anonymous
7 years ago
For all who use php 7 and ubuntu

sudo apt-get install php7.0-gd
up
1
fabrizzio at webtux dot cl
5 years ago
php --version if result is 7.2 version

sudo apt-get install php7.2-gd
up
0
abdulbasitsaeed
5 years ago
To install PHP GD extension on an Amazon Linux AMI server, with php 7:

sudo yum install php 70-gd

Do remember to restart Apache after the installation!

sudo service httpd restart
up
0
Joseph Marlin
13 years ago
I also had to install the libgd package in addition to php5-gd:

sudo apt-get install libgd2-xpm-dev*
up
-1
Mike K
8 years ago
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).
up
-1
boly38 at gmail dot com
13 years ago
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
up
-2
Parmjit Singh
3 years ago
Installation on Pop-os No need for php5 or php7.0 etc:

sudo apt install php-gd
up
-2
leyluj21 at gmail dot com
9 years ago
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.
up
-3
tecknovice at gmail dot com
4 years ago
currently is php7.2-gd

sudo apt install php7.2-gd
up
-3
octopus at logicaloctopus dot com
13 years ago
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!
up
-5
elassoto at hotmail dot com
14 years ago
If you have already compiled PHP and want to recompile '--with-gd', don't forget to run 'make clean' first!
up
-4
remalsha at gmail dot com
6 years ago
On AntergosOS ( Arch linux )

*first run >>php -v and get current php version. In my case for PHP 7.1.14

sudo pacman -S php71-gd

then restart you apache server using,

sudo systemctl restart httpd
up
-3
oskari at cellarcode dot com
1 year ago
Note if you have php-fpm installed, you have to restart the service for the installation to show up in phpinfo output...

systemctl restart php-fpm (or equivalent)
To Top