« Neue Thandor WebseitephpMyAdmin unter Gentoo »

PHP5 unter Gentoo auf Athlon64

20.10.2005

Permalink 14:40:03, von Thomas E-Mail , 491 Wörter   German (DE)
Kategorien: Linux

PHP5 unter Gentoo auf Athlon64

Mein Ziel war es Apache2 und PHP5 zum Laufen zu bringen (MySQL auch noch dazu). Das hat aber etwas länger gedauert, als ich zunächst dachte, weil einige Pakete noch nicht für den Athlon64 (also für den 64bit Code) freigegeben sind. Die Installation von Apache verlief aber erstmal ohne Probleme:

# emerge apache

Die Installation von PHP ist für einen Gentoo Anfänger (wie mich) ungleich schwieriger. Es gibt zwei Pakete, welche auf den Namen php hören: dev-lang/php und dev-php/php. Aus den Beschreibungen geht hervor, dass dev-lang/php das richtige Paket für PHP5 ist.

Wenn man sein Gentoo Linux für Athlon64 kompiliert hat, funktioniert ein einfaches emerge dev-lang/php aber nicht. Das Paket wird von ~amd64 maskiert. Nach einigem Suchen bei Google habe ich dann folgendes gefunden: um die Pakete zu entmaskieren müssen folgende Zeilen in die neu zu schaffende Datei /etc/portage/package.keywords geschrieben werden:

>=dev-lang/php-5 ~amd64
>=dev-php/mod_php-5 ~amd64

Das heißt, dass beide Pakete für die Versionen größer oder gleich fünf für Athlon64 freigegeben werden. Das reicht aber noch nicht. Beim Aufruf von emerge dev-lang/php kommen weitere Fehlermeldungen, welche zu folgenden zusätzlichen Einträgen in der Datei package.keywords führen:

app-admin/eselect ~amd64
app-admin/eselect-php ~amd64
>=app-text/aspell-0.60 ~amd64

Außerdem muss die Datei /etc/portage/package.use um folgende Zeile ergänzt werden:

dev-lang/php -berkdb

Und ein paar USE Flags sind generell interessant (Eintrag in /etc/make.conf): apache2 cli gd.

Anschließend sollte alles funktionieren. Ich habe vor dem emerge dev-lang/php (und den Änderungen für portage noch folgendes ausgeführt, was aber ausser langem Kompilieren nichts ändern sollte:

# emerge dev-php/php
# emerge dev-php/mod_php
# emerge --unmerge dev-php/php
# emerge --unmerge dev-php/mod_php

Bevor es losgeht, wird der Apache in die "Autostartliste" eingetragen (rc-update add apache2 default) und diesem dann PHP beigebracht (-D PHP5 in der Variablen APACHE2_OPTS der Datei /etc/conf.d/apache2 ergänzen). Jetzt kann aber ein erster Test her. Einfach folgenden Inhalt in die Datei /var/www/localhost/ht_docs/test.php:

<?php phpinfo() ?>

Nach dem der Apache gestartet wurde (/etc/init.d/apache2 start) kann die Seite im Browser auf einem anderen Rechner geladen werden.

Die Ausstattung von PHP ist noch etwas dürftig, so dass ich in /etc/portage/package.use folgende USE Flags ergänzt habe: bzip2 imap pcre pear xml2. In der Datei /etc/portage/package.keywords habe ich folgende Ergänzungen gemacht [machen müssen]:

dev-php/PEAR-PEAR ~amd64
dev-php/PEAR-Archive_Tar ~amd64
dev-php/PEAR-Console_Getopt ~amd64
dev-php/PEAR-XML_RPC ~amd64

Anschließend habe ich folgendes ausgeführt:

# emerge PEAR-PEAR
# emerge mysql
# emerge pecl-pdo
# emerge --newuse world

Der letzte Befehl dient dazu, PHP neu zu kompilieren, um den geänderten USE Flags Rechnung zu tragen. Nach einem Apache Neustart (/etc/init.d/apache2 restart) sieht die Angabe von phpinfo() schon besser aus.

Trackback-Adresse für diesen Eintrag

Trackback-URL (Rechtsklick und Verknüpfungs-/Link-Adresse kopieren)

Noch kein Feedback

Einen Kommentar hinterlassen


Ihre E-Mail-Adresse wird nicht auf dieser Seite angezeigt.

Ihr URL wird angezeigt.
(Zeilenumbrüche werden zu <br />)
(Name, E-Mail-Adresse & Webseite)
(Benutzern erlauben, Sie durch ein Kontaktformular zu kontaktieren (Ihre E-Mail-Adresse wird nicht weitergegeben))
Februar 2012
Mo Di Mi Do Fr Sa So
 << <   > >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29        

Suche

blog engine