Zum Inhalt springen

gd with gif und php 4.1.2

Erstellt am 5. Februar 2003 · 5 Antworten · letzte Antwort am 20. Mai 2003

Tags: PHP, Frage

LineMan ·

Hi...

Also ich bin mal wieder am Ende meines rootisch´s ich habe es hinbekommen, modphp4 ver. 4.06 (beinhaltent gd mit gif, image magick, freetype 1.3.1, gzip,...) zu kompilieren und ans laufen zu bringen...

allerdings, wenn ich daraufhin versuche die ganze sache auf php 4.1.2 upzudaten, dann komme ich um den Fehler "gdImageCreateFromGif" nicht herum. was kann ich tun? hat da jemand erfahrung?

Mein System:
Rootserver 1und1 mit Suse 7.2, php 4.06, Confixx 2.06

die änderung am apache file habe ich natürlich gemacht...
LD_LIBRARY_PATH=/usr/local/typo3sh/lib:$LD_LIBRARY_PATH

Hier der Fehler wenn ich Apache starten will:
Syntax error on line 30 of /etc/httpd/suse_loadmodule.conf:
Cannot load /usr/lib/apache/libphp4.so into server: /usr/lib/apache/libphp4.so: undefined symbol: gdImageCreateFromGif unused

hier mein configure:

./configure --bindir=/usr/bin --datadir=/usr/share/php --enable-discard-path --enable-force-cgi-redirect --enable-ftp --enable-magic-quotes --enable-sockets --enable-sysvsem --enable-sysvshm --enable-track-vars=yes --enable-trans-sid --enable-versioning --enable-wddx --enable-yp --with-apxs=/usr/sbin/apxs --with-config-file-path=/etc --with-exec-dir=/usr/local/typo3sh/bin --with-gd=/usr/local/typo3sh --with-gettext --with-jpeg-dir --with-mysql=/usr --with-png-dir --with-tiff-dir --with-ttf=/usr/local/typo3sh --with-xml --with-zlib=yes --enable-gd-native-ttf

in den angegebenen verzeichnissen sind natürlich alle files vorhanden und mit dem gleichen configure unter php-4.0.6 auch lauffähig...

das php paket habe ich allerdings von typo3server.de... kann es sein die sie es so modifiziert haben, dass es mit einem normalen paket nicht geht? und wenn was muss ich modifizieren an php 4.1.2?

die forensuche bietet zu diesem gif problem nicht wirklich ne lösung an und auch die globale suche nicht, deshalb mal ein neuer threat... sorry

weiss da jemand weiter, von mir aus auch gegen Bezahlung? Ich bin echt nah an der Verzweifelung... 🙁

Langheim ·

Ich habe dasselbe Problem unter SuSe 8.0 mit PHP 4.1.0.

Anscheinend ist es so, das beim Kompilieren von PHP immer die bereits installierter dymische lib Version der GD Lib angezogen wird und nicht die 1.8.3. mit gif Support (libgd.a), die ich extra kompiliert habe. (ldd Kommando auf PHP lib).

Das SuSe 8 Installations Manual von Carsten Rose äussert sich auch nicht dazu.

Langheim ·

so, mit der 4.0.6 Version von PHP geht es einwandfrei =) aber wieso ? Schaue mal in die Makefiles .... *bbbrrrbbb*

Langheim ·

Das File zum linken des PHP4 MOduls sind tatsächlich verschieden. EIn !diff" zeigt (php version 4.1.0 / php version 4.0.6)

< dependency_libs=' -L/usr/local/typo3sh/lib -ldl -lz -L/usr/lib -L/usr/X11R6/lib -lz -lz /usr/lib/libttf.la -lz -lz -lcrypt -lresolv -ldl -lresolv -lcrypt -lpam -ldl -lmysqlclient -lz /usr/lib/libgd.la /usr/lib/libfreetype.la -lz -lX11 -lXpm /usr/local/typo3sh/lib/libttf.la -lpng -lz /usr/lib/libjpeg.la -lz -lcrypt -lresolv -lm -ldl -lnsl -lresolv -lcrypt '
---
> dependency_libs=' -R/usr/local/lib -R/usr/local/typo3sh/lib -L/usr/local/lib -L/usr/local/typo3sh/lib -lpam -ldl -lmysqlclient -lz -lgd -lttf -lpng -lz -ljpeg -lz -lcrypt -lresolv -lm -ldl -lnsl -lresolv -lpam -ldl -lmysqlclient -lz -lgd -lttf -lpng -lz -ljpeg -lz -lcrypt -lresolv -lm -ldl -lnsl -lresolv'

Die gd lib ist im unteren Fall noch statisch eingebunden (4.0.6). Leider habe ich im moment nicht die Möglichkeit es neu zu übersetzen, tauscht man die Zeilen aus, sollte es aber gehen .... demnächst mehr ...

Langheim ·

Yup! funktioniert. Einfach in der neueren PHP Versionen die Einträge für GD Lib gegen -lgd austauschen.

huski ·

Hi,

Du scheinst ja eine loesung fuer das Problem gefunden zu haben .... Prima

Koenttest Du den weg um es zu beheben etwas genauer beschreiben bitte.

Ich muss gestehen ich verstehe zwar was Du meinst, es geht aber ueber meine wissen, wie man das umsetzt. :-)

Wo finde ich was ??

Danke Dir im voraus