2013-10-08 6 views
10

Ich muss PHP in meinem Home-Verzeichnis installieren, ohne ein Verzeichnis außerhalb meines Hauses zu verschmutzen [sehr wichtige Voraussetzung!]. Im System läuft bereits eine ältere PHP-Version.Installieren von PHP in meinem Home-Verzeichnis

fand ich Anweisungen hier: http://blog.thecybershadow.net/2013/01/25/installing-php-and-apache-module-under-home/

ich diese Befehle in meinem Home-Verzeichnis, als normaler Benutzer dan

$ ./configure --prefix=/home/dan/php 
$ make 
$ INSTALL_ROOT=/home/dan/php make install 

Der Autor des Artikels Staaten ausführt, der sowohl --prefix verwenden müssen und INSTALL_ROOT um sicherzustellen, dass nichts außerhalb Ihres Heim-Verzeichnisses installiert wird.

PHP installiert wird (! Yeah), aber leider wird es hier installiert:

/home/dan/php/php55/home/dan/php/php55/bin 

während ich hatte gehofft, dass es hier bekommen installiert:

/home/dan/php/php55/bin 

Was soll ich tun? Sollte ich nur eins der Direktiven verwenden? Was ist der sauberste und konventionellste Weg?

Antwort

5

Das ist alles einfach:

INSTALL_ROOT=/ DESTDIR=/ make install 

ich das denke, aus diesem Grund, aber ich bin wahrscheinlich falsch:

Sie verwenden beide PWD $/configure prefix = und die installations Variable mit make. Diese beiden Optionen schließen sich gegenseitig aus.
Wenn Sie --prefix verwenden, müssen Sie vor jedem Pfad der Dateien, die in den make-Dateien installiert werden sollen, einen Pfad hinzufügen. Dann verwenden Sie die Variable INSTALL_ROOT.

Konfigurieren Sie create static make rules; also make könnte keinen Weg haben, etwas zu ändern:
Es fügt den Pfad hinzu, den Sie mit configure ein zweites Mal angegeben haben.

0

Verwenden Sie einfach

make install 

da Sie bereits konfiguriert haben es in Ihrem Haus installiert werden. (Besser probieren Sie es aus auf einem Nicht-root-Konto zuerst)

3

Um php in Ihrem Home-Verzeichnis (Beispiel: Wenn Sie keinen Root-Zugriff haben, sondern eine ausführbare PHP-Datei müssen) zu installieren, führen Sie den folgenden Download-Ordner Befehle in Ihrem php:

$ ./configure --prefix=/my/path/ 
$ make install 

wie @ Michael Tsang erklärte, nicht wahr Notwendigkeit auf Ihre ein zweites Mal den Ordner angeben installieren wie auf die die duplizieren Hierarchie Ordner erstellen führen installieren in Ihrem Ziel installieren Ich würde auch empfehlen kompilieren von PHP mit der --with-openssl, wenn Sie auf einem Remote-Server arbeiten, oder mit Composer zum Beispiel (fügen Sie einfach das Flag an das Ende des ersten Befehls).

Verwandte Themen