Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 16-10-2018 08:11:06

kmchen
Membre
Inscription : 19-03-2008

[résolu]où est GD

Bonjour,

sur un serveur Debian9, je souhaite installer un php addtionnel pour faire tourner un vieux site en m'inspirant de ce tuto:
https://www.howtoforge.com/tutorial/how … on-debian/

J'ai donc installé php5.6-fpm avec mysql et gd comme ça:

...
    cd /usr/local/src/php5.6-build/php-5.6.33
    ./configure --prefix=/opt/php-5.6 --with-pdo-pgsql --with-zlib-dir --with-freetype-dir --enable-mbstring --with-libxml-dir=/usr --enable-soap --enable-calendar --with-curl --with-mcrypt --with-zlib --with-pgsql --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --enable-exif --enable-bcmath --with-mhash --enable-zip --with-pcre-regex --with-pdo-mysql --with-mysqli --with-mysql-sock=/var/run/mysqld/mysqld.sock --with-jpeg-dir=/usr --with-png-dir=/usr --enable-gd-native-ttf --with-openssl=/opt/openssl --with-fpm-user=www-data --with-fpm-group=www-data --with-libdir=/lib/x86_64-linux-gnu --enable-ftp --with-kerberos --with-gettext --with-xmlrpc --with-xsl --enable-opcache --enable-fpm --with-mysql --with-gd
 



Compilé et installé sans problème. Le site se connecte bien à Mysql après quelques adaptations et GD semble installé:

    root@ns1:/var/www/webologix.com/web# /opt/php-5.6/bin/php -r "echo phpinfo();" | grep with-gd
    Configure Command => './configure' '--prefix=/opt/php-5.6' '--with-pdo-pgsql' '--with-zlib-dir' '--with-freetype-dir' '--enable-mbstring' '--with-libxml-dir=/usr' '--enable-soap' '--enable-calendar' '--with-curl' '--with-mcrypt' '--with-pgsql' '--disable-rpath' '--enable-inline-optimization' '--with-bz2' '--with-zlib' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-pcntl' '--enable-mbregex' '--enable-exif' '--enable-bcmath' '--with-mhash' '--enable-zip' '--with-pcre-regex' '--with-pdo-mysql' '--with-mysqli' '--with-mysql-sock=/var/run/mysqld/mysqld.sock --with-jpeg-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--with-openssl=/opt/openssl' '--with-fpm-user=www-data' '--with-fpm-group=www-data' '--with-libdir=/lib/x86_64-linux-gnu' '--enable-ftp' '--with-kerberos' '--with-gettext' '--with-xmlrpc' '--with-xsl' '--enable-opcache' '--enable-fpm' '--with-mysql' '--with-gd'



Mais le vieux site se plaint avec un message du genre:

    Creating thumbnail from JPG, 600 x 800...
    GD image library not installed!

Après quelques recherches on m'indique que je devrais installer GD et donner le chemin exact à la compile mais je ne sais pas trouver le chemin de GD:


root@ns1:/usr/local/src/php5-build/php-5.3.29# dpkg -l *gd*
...
un  gdb               <none>        <none>        (no description available)
un  ifplugd           <none>        <none>        (no description available)
un  libgd-tools       <none>        <none>        (no description available)
ii  libgd3:amd64      2.2.4-2+deb9u amd64         GD Graphics Library
ii  libgdbm3:amd64    1.8.3-14      amd64         GNU dbm database routines (runtime vers
un  myspell-gd        <none>        <none>        (no description available)
ii  php-gd            1:7.0+49      all           GD module for PHP [default]
ii  php7.0-gd         7.0.30-0+deb9 amd64         GD module for PHP

root@ns1:/usr/local/src/php5-build/php-5.3.29# whereis gd
gd:

root@ns1:/usr/local/src/php5-build/php-5.3.29# whereis php-gd
php-gd:
 



Des idées ?

Dernière modification par kmchen (25-10-2018 16:14:44)

Hors ligne

#2 16-10-2018 09:01:30

empanada
Membre
Distrib. : Debian 10 (Buster)
Noyau : 4.19.0-6-amd64
(G)UI : LXDE
Inscription : 19-09-2018

Re : [résolu]où est GD

/usr/lib/x86_64-linux-gnu/libgd.so.3
La réponse ici Liste des fichiers du paquet libgd3 dans stretch pour l'architecture amd64

"blues are the roots and the other musics are the fruits" . Willie Dixon

Hors ligne

#3 16-10-2018 15:08:18

kmchen
Membre
Inscription : 19-03-2008

Re : [résolu]où est GD

Le configure échoue avec ça:

configure: error: Unable to find gd.h anywhere under /usr/lib/x86_64-linux-gnu/libgd.so.3



C'est pourtant pas les gd.h qui manquent sur mon installe. Semble même qu'il y ait des doublons, non ?:

root@ns1:/usr/local/src/php5.6-build/php-5.6.33#

locate gd.h



/opt/php-5.6/include/php/ext/gd/libgd/gd.h
/opt/php-5.6/include/php/ext/gd/php_gd.h
/opt/php-7.1/include/php/ext/gd/libgd/gd.h
/opt/php-7.1/include/php/ext/gd/php_gd.h
/usr/local/src/php5-build/php-5.3.29/ext/gd/libgd/gd.h
/usr/local/src/php5-build/php-5.3.29/ext/gd/php_gd.h
/usr/local/src/php5.6-build/php-5.6.33/ext/gd/libgd/gd.h
/usr/local/src/php5.6-build/php-5.6.33/ext/gd/php_gd.h
/usr/local/src/php7.1-build/php-7.1.14/ext/gd/libgd/gd.h
/usr/local/src/php7.1-build/php-7.1.14/ext/gd/php_gd.h
 



Apparemment il y a un gd dans les extensions du php-5.6 que j'ai installé et il a du utiliser celui là lors de la première compilation que j'ai fait et qui n'a donné aucun message d'erreur.
Mais alors pourquoi le site a donné l'erreur ?

Je comprends pas. Quand on met --with-gd= ça lie la librairie gd ou seulement les headers de gd qui pointent vers la librairie ?

Edit à toto : Modif faite - Séparer la commande seule de son retour rend les posts plus lisibles par les débutants. Utiliser le BBCode Commande root ou Commande user pour les commandes est le mieux aussi.

Dernière modification par kmchen (16-10-2018 15:24:56)

Hors ligne

#4 18-10-2018 09:13:00

kmchen
Membre
Inscription : 19-03-2008

Re : [résolu]où est GD

J'ai trouvé un moyen d'installer php5-gd :


root@ns1:~# dpkg -l php5-gd
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name              Version       Architecture  Description
+++-=================-=============-=============-=======================================
ii  php5-gd           5.6.38+dfsg-0 amd64         GD module for php5



Maintenant comment lier ce GD dans le configure avec le --with-gd= ? Autrement dit quel chemin dois je indiquer et comment le trouver ?

Hors ligne

#5 18-10-2018 15:05:09

kmchen
Membre
Inscription : 19-03-2008

Re : [résolu]où est GD

J'ai trouvé le problème. En fait le configure était bon mais il fallait faire un clean du PHP avant de recompiler, sinon les objets restaient inchangés:

make clean
make distclean



Inutile d'installer php5-gd. GD est compilé dans le PHP5.6

Hors ligne

#6 18-10-2018 15:08:39

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [résolu]où est GD

kmchen a écrit :

Inutile d'installer php5-gd. GD est compilé dans le PHP5.6


Impec !
    \o/
    Voir le tuto : C'est résolu ! Bravo mais il faut l'indiquer dans l'titre.


"Théo et Adama te rappellent pourquoi Zyed et Bouna couraient…"
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

#7 25-10-2018 15:33:29

kmchen
Membre
Inscription : 19-03-2008

Re : [résolu]où est GD

Petit souscis avec JPEG

root@ns1:/opt/php-5.6/include/php/ext/gd# /opt/php-5.6/bin/php -r "print_r( gd_info());"                                                                                                    
Array                                                                                                                                                                                        
(                                                                                                                                                                                            
    [GD Version] => bundled (2.1.0 compatible)                                                                                                                                              
    [FreeType Support] => 1                                                                                                                                                                  
    [FreeType Linkage] => with freetype
    [T1Lib Support] =>
    [GIF Read Support] => 1
    [GIF Create Support] => 1
    [JPEG Support] =>
    [PNG Support] => 1
    [WBMP Support] => 1
    [XPM Support] =>
    [XBM Support] => 1
    [WebP Support] =>
    [JIS-mapped Japanese Font Support] =>
)



Résolu en installant:

apt-get install libjpeg-dev
apt-get install libfreetype6-dev



et en recompilant après un make clean

J'ai publié une petit recap ici:
https://webologix.com/fr/blog/php5.6-fp … on-gd.html
Pour ceux à qui ça peut servir

Dernière modification par kmchen (25-10-2018 16:13:35)

Hors ligne

Pied de page des forums