Установка

Для поддержки модуля GD, необходимо сконфигурировать PHP с опцией --with-gd[=DIR], где DIR — это директория установки GD. Чтобы использовать рекомендованную разработчиками встроенную версию библиотеки GD, указывают опцию конфигурации --with-gd. Библиотека GD требует наличия библиотек libpng и libjpeg для компиляции. С 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 для работы с большим количеством форматов изображений можно, указав опцию --with-XXXX во время конфигурации PHP.

Поддерживаемые форматы изображений
Формат изображения Опция при конфигурировании
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, поэтому добавьте --with-zlib-dir[=DIR] при конфигурации. С PHP 7.4.0 были удалены --with-png-dir и --with-zlib-dir. Теперь libpng и zlib обязательны.
xpm Чтобы включить поддержку xpm добавьте --with-xpm-dir=DIR. Если во время конфигурации не удаётся найти необходимую библиотеку, можно указать путь к библиотеке X11. С PHP 7.4.0 вместо этого указывают опцию --with-xpm.
webp Чтобы включить поддержку webp, добавьте --with-webp-dir=DIR.

Замечание: При компиляции PHP с библиотекой libpng необходимо указать ту же версию libpng, с которой была собрана библиотека GD.

Повысить возможности библиотеки GD для работы с разными шрифтами можно, указав опцию --with-XXXX во время конфигурации PHP.

Поддерживаемые библиотеки шрифтов
Библиотека шрифтов Опция при конфигурировании
FreeType 2 Чтобы включить поддержку FreeType 2 добавьте --with-freetype-dir=DIR. С PHP 7.4.0 вместо этого указывают опцию --with-freetype , которая зависит от pkg-config.
Native TrueType string function Чтобы включить поддержку Native TrueType string function добавьте --enable-gd-native-ttf. (Параметр не имеет никакого эффекта и был удалён в PHP 7.2.0.)

add a note add a note

User Contributed Notes 23 notes

up
17
Anonymous
8 years ago
For all who use php 7 and ubuntu

sudo apt-get install php7.0-gd
up
10
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
3
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
5
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
2
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
msc at homofaber dot com
16 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
2
fabrizzio at webtux dot cl
6 years ago
php --version if result is 7.2 version

sudo apt-get install php7.2-gd
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
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)
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
-2
tecknovice at gmail dot com
4 years ago
currently is php7.2-gd

sudo apt install php7.2-gd
up
-2
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
leyluj21 at gmail dot com
10 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
-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
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
-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
-4
Parmjit Singh
3 years ago
Installation on Pop-os No need for php5 or php7.0 etc:

sudo apt install php-gd
up
-10
alejo dot jm at gmail dot com
12 years ago
On Macox lion with mac port just use:
sudo port install php5-gd
up
-15
nordin74
4 years ago
Since 7.4 replace "--with-gd" by "--enable-gd"
up
-17
theonestep4 at gmail dot com
7 years ago
To install on CentOS:

yum install php-gd
up
-21
Gabriel Torres
4 years ago
As of PHP 7.4, to enable GD you have to use --enable-gd instead of --with-gd
up
-9
omni at ominsapien dot com
3 years ago
Hello. Does GD image processing allow for color spaces / color profiles to be defined or maintained from the source image? For example, if I upload a jpg with ProPhoto RGB color space with the embedded profile, will all of the subsequent processed images that are output maintain the profile? Or is there no profile and or is it changed to sRGB?

Same question goes for ImageMagick.

Thank you so much!
To Top