Bin schon eine Weile dabei PHP5 auf meinem vServer (Debian 3.0) zu installieren und es sind einige Problemchen aufgetreten…
- Zunächst musste ich den Sourcecode erst einmal runterladen und entpacken. Das ging mit folgenden Kommandos recht schnell:
cd /usr/local/scr/
wget URL
gunzip GZ-Datei
tar -xvf TAR-Datei - Aber wie kompiliere ich PHP5 überhaupt? Die Antwort gibt’s in der PHP Doku (wo auch sonst?) hier. Standard-Ablauf:
./configure OPTIONS
make
make install
Die Options habe ich von meiner alten PHP4-Installation übernommen. Wenn das direkt geklappt hätte, wäre dieser Eintrag nicht nötig 😉 Das configure-Kommando gab zunächst einige Fehlermeldungen aus. - Das libxml2-Paket musste geupdatet werden. Das geht über diese Befehle, hauptsächlich aber
apt-get install PAKETDie Versionen der installierten Pakete können mitdpkg -langezeigt werden. Nachdem libxml2 nun die korrekte Version hatte, musste ich den Server neustarten, weil der POP3-Server nicht mehr wollte… - Nun kam die Meldung, das irgendein DBA-Paket Probleme macht, also habe ich kurzerhand alle DB-Pakete bis auf MySQL aus dem configure-Aufruf rausgeschmissen
- Als nächstes hatte ich folgende Fehlermeldung:
configure: error: Problem with libt1.(a|so).Flugs in die config.log geschaut und festgestellt, dass es wohl am FreeType-Paket liegt. Also musste das als nächstes geupdatet werden. dazu habe ich mir das Paket t1lib_5.1.0.orig.tar.gz vom Debian-FTP-Server geladen und mittels Standardverfahren (Link) installiert. Dabei gab’s allerdings wieder nen Fehler:
Please check config.log for more information.make[1]: *** [xglyph.lo] Error 1Dieser kann aber ignoriert werden. Das PHP5 configure-Kommando läuft nun durch.
make[1]: Leaving directory `/usr/local/src/.../xglyph'
make: *** [XXXX] Error 1
- Dafür kommt jetzt diese Meldung:
configure: error: Cannot find MySQL header files underDeshalb mussten die MySQL-Sources nachinstalliert werden mit
yes. Note that the MySQL client library is not bundled anymore!apt-get install libmysqlclient14-dev
Nach diesem ganzen Aufwand lief das configure-Kommando tatsächlich durch 🙂 make und make install liefen auch, aber das Einbinden des Moduls in Apache verursachte dann noch die Fehler auf der folgenden Seite.