GNU/Linux >> Linux Esercitazione >  >> Linux

Come abilitare la libreria GD in PHP con LibJPEG, FreeType e LibPNG

In PHP puoi manipolare i file di immagine usando la libreria GD.

Supporta diversi formati tra cui GIF, PNG, JPEG, ecc. Puoi utilizzare la libreria LibGD per eseguire lo streaming di immagini direttamente dalla tua applicazione al browser.

Questo tutorial spiega come abilitare la funzionalità GD in PHP.

Scarica la libreria LibJPEG

Innanzitutto, scarica i file LibJPG da qui. Oppure puoi usare il wget qui sotto per scaricarlo direttamente.

cd /usr/save
wget http://www.ijg.org/files/jpegsrc.v9.tar.gz

Installa la libreria LibJPEG

Una volta scaricato, estrai l'archivio e installalo come mostrato di seguito.

tar xvfz jpegsrc.v9.tar.gz
cd jpeg-9
./configure
make
make install

Questo installerà le librerie jpeg nella posizione predefinita /usr/local/lib/ come mostrato di seguito.

# ls /usr/local/lib/*jpeg*
/usr/local/lib/libjpeg.a
/usr/local/lib/libjpeg.la*
/usr/local/lib/libjpeg.so -> libjpeg.so.9.0.0*
/usr/local/lib/libjpeg.so.9 -> libjpeg.so.9.0.0*
/usr/local/lib/libjpeg.so.9.0.0*

Scarica la libreria FreeType

Scarica la libreria freetype da qui. Oppure puoi usare il wget qui sotto per scaricarlo direttamente.

cd /usr/save
wget http://iweb.dl.sourceforge.net/project/freetype/freetype2/2.5.0/freetype-2.5.0.1.tar.bz2

Installa la libreria FreeType

Una volta scaricato, estrai l'archivio e installalo come mostrato di seguito.

tar xvfj freetype-2.5.0.1.tar.bz2
cd freetype-2.5.0.1/
./configure --without-png
make
make install

Durante l'installazione di freetype, se non specifichi il flag senza-png in ./configure come mostrato sopra, potresti ricevere il seguente errore durante ./configure

/usr/include/libpng12/pngconf.h:336: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
/usr/include/libpng12/pngconf.h:337: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'include'
make: *** [/usr/src/freetype-2.5.0.1/objs/sfnt.lo] Error 1

Installa LibPNG

Per la maggior parte, il tuo sistema potrebbe già avere le librerie LibPNG installate come mostrato di seguito.

# rpm -qa | egrep 'jpg|png'
libpng-devel-1.2.10-7.1.el5_0.1
libpng-1.2.10-7.1.el5_0.1

Ma, se non ce l'hai, scarica e installa LibPNG da qui.

Compila PHP

Ora scarica e installa PHP dal sorgente come spiegato in precedenza. Ma, questa volta, assicurati di passare i seguenti parametri a ./configure nella tua installazione di PHP.

./configure \ 
     --with-apxs2=/usr/local/apache2/bin/apxs  \
     --with-mysql \
     --with-gd \
     --with-jpeg-dir \
     --enable-gd-native-ttf \
     --with-freetype-dir \
make
make install

Verifica che GD sia abilitato in PHP

Ora, crea una pagina php di prova con phpinfo() e visualizzala dal browser. Come vedi di seguito, noterai che ha LibGD e le relative librerie abilitate.


Linux
  1. Come installare PHP 7.4 e 8.0 su Ubuntu 18.04 o 20.04

  2. Come abilitare, disabilitare e installare i plug-in Yum

  3. Come installare Nextcloud con Nginx e PHP 7.3 su CentOS 8

  4. Come installare Lighttpd con PHP5 e MySQL su Ubuntu 11.04

  5. Come installare e abilitare la cache PHP alternativa (APC) su CentOS

Come installare e configurare Memcached su CentOS 8

Come installare e configurare Caddy Web Server con PHP su Rocky Linux 8

Come installare e configurare PHP OPcache su Ubuntu 18.04

Come installare e configurare Memcached con Apache e PHP

Come abilitare la memorizzazione nella cache FastCGI lato server con Nginx e PHP

Come installare e configurare WordPress con Ansible