GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So aktivieren Sie die GD-Bibliothek in PHP mit LibJPEG, FreeType und LibPNG

In PHP können Sie Bilddateien mit der GD-Bibliothek bearbeiten.

Es unterstützt mehrere Formate, darunter GIF, PNG, JPEG usw. Sie können die LibGD-Bibliothek verwenden, um Bilder direkt von Ihrer Anwendung in den Browser zu streamen.

Dieses Tutorial erklärt, wie man die GD-Funktionalität in PHP aktiviert.

LibJPEG-Bibliothek herunterladen

Laden Sie zunächst die LibJPG-Dateien von hier herunter. Oder Sie können das wget unten verwenden, um es direkt herunterzuladen.

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

Installieren Sie die LibJPEG-Bibliothek

Nachdem Sie es heruntergeladen haben, extrahieren Sie das Archiv und installieren Sie es wie unten gezeigt.

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

Dadurch werden die JPEG-Bibliotheken im Standardspeicherort /usr/local/lib/ installiert, wie unten gezeigt.

# 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*

FreeType-Bibliothek herunterladen

Laden Sie die Freetype-Bibliothek hier herunter. Oder Sie können das wget unten verwenden, um es direkt herunterzuladen.

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

FreeType-Bibliothek installieren

Nachdem Sie es heruntergeladen haben, extrahieren Sie das Archiv und installieren Sie es wie unten gezeigt.

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

Wenn Sie während der Installation von Freetype nicht das Flag without-png für ./configure angeben, wie oben gezeigt, erhalten Sie möglicherweise die folgende Fehlermeldung während ./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

LibPNG installieren

In den meisten Fällen sind auf Ihrem System möglicherweise bereits LibPNG-Bibliotheken installiert, wie unten gezeigt.

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

Aber wenn Sie es nicht haben, laden Sie LibPNG von hier herunter und installieren Sie es.

PHP kompilieren

Laden Sie jetzt PHP aus der Quelle herunter und installieren Sie es, wie wir zuvor erklärt haben. Stellen Sie diesmal jedoch sicher, dass Sie die folgenden Parameter an ./configure in Ihrer PHP-Installation übergeben.

./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

Überprüfen Sie, ob GD in PHP aktiviert ist

Erstellen Sie nun eine Test-PHP-Seite mit phpinfo() und zeigen Sie sie im Browser an. Wie Sie unten sehen, werden Sie feststellen, dass LibGD und verwandte Bibliotheken aktiviert sind.


Linux
  1. So installieren Sie PHP 7.4 und 8.0 auf Ubuntu 18.04 oder 20.04

  2. So aktivieren, deaktivieren und installieren Sie Yum-Plug-Ins

  3. So installieren Sie Nextcloud mit Nginx und PHP 7.3 auf CentOS 8

  4. So installieren Sie Lighttpd mit PHP5 und MySQL unter Ubuntu 11.04

  5. So installieren und aktivieren Sie den alternativen PHP-Cache (APC) unter CentOS

So installieren und konfigurieren Sie Memcached unter CentOS 8

So installieren und konfigurieren Sie den Caddy Web Server mit PHP unter Rocky Linux 8

So installieren und konfigurieren Sie PHP OPcache unter Ubuntu 18.04

So installieren und konfigurieren Sie Memcached mit Apache und PHP

So aktivieren Sie serverseitiges FastCGI-Caching mit Nginx und PHP

So installieren und konfigurieren Sie WordPress mit Ansible