Zum Inhalt springen

PHP 4.3.4 + gdlib 1.83 = Compilieren aber wie ???!

Erstellt am 27. Dezember 2003 · 2 Antworten · letzte Antwort am 27. Dezember 2003

Tags: Bilder, PHP, Frage

Unbekannter Benutzer ·

Hi,

hab ein paar Probleme mit der Kompilierung von php 4.3.4 und der gdlib 1.8.3 (hab die gepatchte gif-version verwendet)

-> erhältlich unter http://www.typo3server.com/quelltexte.html

die gdlib 1.8.3 habe ich nach Änderungen im Makefile kompiliert mit "make" und "make install"

Die Änderungen im Makefile (Zeile 1-61 gelöscht und nachtstehende Anweisungen eingefügt)

COMPILER=gcc
AR=ar
CFLAGS=-O -DHAVE_XPM -DHAVE_JPEG -DHAVE_LIBTTF
LIBS=-lm -lgd -lpng -lz -ljpeg -lttf -lXpm -lX11
INCLUDEDIRS=-I. -I/usr/local/typo3sh/include/freetype -I/usr/include/X11
-I/usr/X11R6/include/X11
LIBDIRS=-L. -L/usr/local/typo3sh/lib -L/usr/lib/X11 -L/usr/X11R6/lib
PREFIX=/usr/local/typo3sh
INSTALL_LIB=${PREFIX}/lib
INSTALL_INCLUDE=${PREFIX}/include
INSTALL_BIN=${PREFIX}/bin

Läuft super durch:

So ... und jetzt der Knackpunkt:

PHP 4.3.4 wir neu kompiliert mit folgenden configure-Optionen (vorher natürlich "rm config.cache" und "make clean")

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

Dann "make" laufen lassen und nach ner Weile kommen Fehlermeldungen, die irgendwas mit der Gif-Schnittstelle zu tun haben müssen. Ich nehm nur mal nen Auszug ...

/ext/gd/gd.lo: In function `zif_imagecreatefromstring':
/usr/src/packages/BUILD/php-4.3.4/ext/gd/gd.c:1331: undefined reference to `gdImageCreateFromGifCtx'

.
.
.

und weitere Fehlermeldungen dieser Art "undefined reference to <irgendeine_funktion_die_was_mit_gif_zu_tun_hat>

Wenn ich den Schalter "--with-gd=/usr/local/typo3sh" auf "--with-gd" ändere (Seit der PHP-Version 4.3.0 befindet sich eine interne gd-lib), so daß die mitgelieferte gd-lib benutzt wird, die aber für Typo3 nicht ausreichend ist, läuft die Kompilierung von PHP VOLLSTÄNDIG und ohne Fehler durch !

Wer kann mir helfen dieses Problelm zu lösen bzw. WAS LÄUFT SCHIEF ?!?! Vielen Dank.

Unbekannter Benutzer · · Beste Antwort

Ich wäre auch mit ner anderen Lösung zufrieden wie gdlib2 oder was auch immer. Wenns bessere Komponenenten für TYPO3 geben sollte, die möglicherweise weniger Schwierigkeiten bereiten sollten, dann ist das für mich auch okay ?

Kann mir jemand irgendwie dabei behilflich sein ?

Unbekannter Benutzer ·

Hab das Problem gefunden!

Auf der typo3site.comko.de gibts nen Quickstarterpaket, welches ne statische, vorkompilierte "typo3sh" und "libphp4.so" zum Download anbietet.

Das Resultat:

Nach Installation der beiden Pakete hab ich wieder PHP 4.0.6 und zwar so, wie es eine vollständige TYPO3-Installation benötigt - UND DASS OHNE PROBLEME!

Also bin ich hergegangen und habe den Sourcetree von PHP 4.3.4 nochmals versucht zu kompilieren, PHP4.2.3 auch gleich danach. Beides die selben Probleme mit der Gif-Schnittstelle.

Lösung: PHP4.0.6. von http://museum.php.net download auspacken, denselben configure-Befehl drüberlaufen lassen und siehe da. ES GEHT!

Erklärung: So wie es aussieht, wurden alle Gif-funktionen die GD-LIB betreffend aus dem PHP Sourcetree entfernt.

Frage: Gibt es einen Patch für den Sourcetree von PHP 4.3.4 oder 4.3.3, so dass man die Gif-Funktionen von einer VOLLSTÄNDIGEN GIF-gdlib nutzen kann ?