Le Forum Non Officiel de la DEDIBOX
Vous n'êtes pas identifié.
Salut tous !
J'ai un debian qui tourne avec Plesk 8.0.1 sans soucis, sauf que je viens de me rendre compte que la librairie GD n'est pas activée...
Alors autant à l'ancienne époque je savais faire un ./configure avec les variables nécessaires, puis les make qui vont bien, autant depuis que je suis sous Debian et sa facilité, j'ai perdu l'habitude de me sortir les doigts du cul, et je ne trouve pas comment recompiler php pour qu'il me prenne en compte la librairie gd
'./configure' [.........] '--with-gd'
J'ai bien vérif si j'ai les lib d'installées avec aptitude, pas de soucis.
Par contre, j'aimerais bien que php et gd se tappe la discut' maintenant... Et là, je sèche...
Merci !
Hors ligne
Configurer? Compiler? Gniiiii les vilains mots!
Je suggère plus simplement un apt-get install php4(5)-gd que tu as manifestement déjà fait, puis l'ajout d'une ligne dans php.ini:
extension=gd.so
Hors ligne
bonjour, as tu redémarrer apache ? apachectl graceful ou apache2ctl graceful suivant ta version
Hors ligne
Même le serveur ^^
En fait, c'est la fonction imagerotate qui chie dans la colle...
http://de3.php.net/manual/fr/function.imagerotate.php
Exemple 1. Rotation d'une image de 180 degrés
Cet exemple tourne une image de 180 degrés - à l'envers.
// Fichier et degrés de rotation
$filename = 'test.jpg';
$degrees = 180;
// Content type
header('Content-type: image/jpeg');
// Chargement
$source = imagecreatefromjpeg($filename);
// Rotation
$rotate = imagerotate($source, $degrees, 0);
// Affichage
imagejpeg($rotate);
Note : Cette fonction n'est disponible que si PHP est compilé avec la version embarquée de la bibliothèque GD.
Et là, le blanc...
Pour le moment, on contourne le soucis en ne se servant pas de cette fonction, mais si un jour on en a besoin... :wacko:
Hors ligne
Et lorsque tu fais un restart d'Apache(2), tu n'as pas un message d'erreur dans le log concernant le non chargement de la librairie?
GD est-il bien absent de ton phpinfo?
Dernière modification par Teg (2007-01-17 10:55:20)
Hors ligne
Bah j'ai un joli warning en effet
PHP Warning: Function registration failed - duplicate name - gd_info in Unknown on line 0
PHP Warning: Function registration failed - duplicate name - imagecreatefromgd in Unknown on line 0
PHP Warning: Function registration failed - duplicate name - imagecreatefromgd2 in Unknown on line 0
PHP Warning: Function registration failed - duplicate name - imagecreatefromgd2part in Unknown on line 0
PHP Warning: Function registration failed - duplicate name - imagegd in Unknown on line 0
PHP Warning: Function registration failed - duplicate name - imagegd2 in Unknown on line 0
PHP Warning: gd: Unable to register functions, unable to load in Unknown on line 0
En fait, on a pas la bonne version de GD... Car il marche, mais certaines fonctions non...
La génération d'image fonctionne, pas les fonctions de manipulation d'images comme la rotation...
Hors ligne
Ca c'est php qui essaye de charger gd et gd2 en même temps. Youpi le conflit! -_-'
Et j'admets que je ne sais pas comment nettoyer ça proprement. Peut être en allant dans /usr/lib/php4/20020429 (ou équivalent) et en vérifiant qu'il n'y a pas deux fichiers gd
Hors ligne
T'es est où, là ?
T'as fait un ./configure --with-gd (sans spécifier de chemin vers ta libgd "système" pour que PHP utilise sa propre version) , c'est ca ?
T'as bien dégagé le "extension=gd.so" ?
Hors ligne
J'ai rien fait de tout ça...
J'ai juste installé Plesk et fais les mises à jour avec aptitude, sans plus...
J'ai pas du tout fait de ./configure --with-gd
Et non, j'ai pas dégagé extension=gd.so, pourquoi, je devrais ?
Hors ligne
Comme tu l'as souligné dans la doc il est indiqué que "imagerotate()" n'est dispo qu'avec la version de GD fournie dans les sources de PHP et non la librairie GD "externe".
Quand tu utilises "extension=gd.so" (package php4-gd), tu utilises le GD externe.
Pour avoir imagerotate() il faut a priori recompiler ton PHP pour utiliser le GD interne.
Hors ligne
Calimero a écrit:
Pour avoir imagerotate() il faut a priori recompiler ton PHP pour utiliser le GD interne.
J'peux faire mon newbie et poser la question qui tue ? :lipssealed:
Hors ligne
Si tu oses, je te réponds RTFM ![]()
Hors ligne
Note: si tu fais un phpinfo() tu auras la ligne ./configure utilisée.
Ca peut servir de (bonne) base de travail.
Hors ligne
Alors j'me suis plongé dans du dpkg-reconfigure et chuis tombé là dessus:
http://forum.hardware.fr/hfr/OSAlternat … 2580_1.htm
Tout en bas... Pour le moment, ça donne rien... Je continue...
Hors ligne
Pas compris le rapport en IMAP et GD :+
Hors ligne
Aucun, c'est juste pour le dpkg-reconfigure...
"Dites lui que j'ai plus de genou"...
Putain, tu me crois si je te dis que je sais pas où faut aller pour tapper le ./configure ???
Hors ligne
P'tain, j'suis pile dans ce cas:
http://www.andesi.org/forum/viewtopic.php?pid=43579
Bon, vais manger et faire caca, j'aurais l'esprit plus clair avec un estron en moins...
Hors ligne
Flying Jack a écrit:
"Dites lui que j'ai plus de genou"...
Automatiquement, quand on se sort les doigts du cul, ça laisse comme qui dirait un vide.
Par principe, la nature n’aimant pas le vide...
Hors ligne
En (très) gros:
apt-get install build-essential
wget http://url-kivabien-sur-php.net/php-4.4.4.tar.gz
tar xvzf php-4.4.4.tar.gz
cd php-4.4.4
./configure --capoutre
make
make install
T'as probablement intérêt à jouer avec --prefix pour installer ton PHP dans un coin (et garder le PHP Debian dans son coin). Faudra par contre changer les params dans /etc/apache2/mods-available/ pour qu'il charge ton PHP.
Sinon tu peux simplement écraser le PHP Debian en te disant que le retour en arrière se fera à coup de "apt-get --reinstall install libapache2-mod-php4". Enfin bref, méfiance !
Hors ligne
Hello,
Il n'est pas nécessaire de recompiler php pour gd : http://support-debian.homelinux.org/ind … ec-apache2
Hors ligne
Tu peux essayer de virer tout ce qui est en rapport avec PHP sur ton serveur puis refaire une installe clean via APT.
[big]Si tu compiles PHP.[/big]
Tu installes les paquets nécessaires.
# aptitude install libtool libjpeg62 libjpeg62-dev libt1-dev libpng2 libfreetype6 libfreetype6-dev xlibs freetype2 xlibs-dev libpng3 libpng3-dev libfontconfig1 libfontconfig1-dev
Puis tu compiles GD.
# ./configure --prefix=/usr/local --with-xpm --with-freetype --with-fontconfig --with-jpeg --with-png # make # make install
Compilation de PHP :
# ./configure --with-gd=/usr/local
Hors ligne
Attention, si on veut les fonctionnalités GD "étendues", il ne faut pas utiliser le package "php[45]-gd", ni spécifier le chemin vers les libs GD "externes" avec --with-gd=/path/to/lib
Il faut se contenter de --with-gd qui va utiliser le GD embarqué dans les sources de PHP.
Hors ligne