Ich habe mich gerade an der Installation von PEAR und Smarty versucht und dachte mir, vielleicht interessiert es jemanden, wie er vor allem PEAR auf dem Webspace zum laufen bekommt.
loggt euch per ssh auf dem Server ein und führt das Kommando
wget http://go-pear.org
(an dieser Stelle möchte ich gleich noch anmerken, dass lynx leider nicht funkttioniert, da es eine fehlende /etc/lynx.conf anprangert!)
das erstellt euch ein index.html die ihr wie folgt mit php ausführt:
php index.html
Ihr werdet nun gefragt, ob ihr Pear wirklich installieren wollt, also Enter drücken.
Dann kommt eine Frage nach einem Proxy, die ebenfalls mit Enter beantwortet wird.
Anschließend kommt hingegen eine Frage, die schon eher wichtig ist, nämlich die Frage, wo Pear die Verzeichnisse hinräumen soll. Hier genügt es eigentlich, das Installation prefix zu editieren, also flux eine 1 eingegeben und mit Enter bestätigt.
Nun kann man diesen Prefix editieren, ich habe ihn auf /wwwxxxx/pear/ gesetzt.
Nun rattert das Script durch (wenn ich nicht einen Punkt zwischendurch vergessen habe

), gibt aber die ein oder andere Warnung aus, inklusive der Frage am Ende, ob man denn die php.ini manuell ändern möchte, was man verneint (nicht, dass ein Yes an dieser Stelle viel bringen würde, wäre ja schlimm wenn man das einfach so könnte

).
Normalerweise würde PEAR sich in den include_path von php eintragen via editierens der php.ini, da das leider nicht möglich ist muß am Anfang jeden Scriptes, dass Pear-Features zu nutzen gedenkt folgende Zeile Code eingefügt werden:
ini_set('include_path',ini_get('include_path').'.:/wwwxxxx/pear/lib/php');
//Beispiele:
require_once('DB.php');
$db=DB::connect();
Dann sollte pear eigentlich im Grundsätzlichen schonmal funktionieren.
Jetzt kann man sich aber das Leben noch ein bissle vereinfachen, denn um z.B. das DB-Package zu aktualisieren wäre die Eingabe von
/wwwxxxx/pear/bin/pear upgrade DB
nötig, was schnell in eine heidenarbeit ausartet. Aber wozu hat irgendein schlauer Unix-Programmierer mal alias erfunden

also einfach die .profile-Datei im himeverzeichniss editieren wie folgt:
alias pear="/wwwxxxx/pear/bin/pear"
alias pls="pear list"
alias pla="pear list-all"
alias prm="pear uninstall"
schon ist
1. pear anstelle von /wwwxxx/undsoweiter möglich
2. es erheblich einfacher, die gängigen Befehle wie 'pear list' zu benutzen, da diese jetzt abgekürzt werden ('pls')
Nun kommt noch die Smarty Template Enginge:
wget http://smarty.php.net/do_download.php?download_file=Smarty-2.6.0.tar.gz
läd die derzeit aktuelle Version 2.6.0 runter (ggf. anpassen)
diese wird nun entpackt:
tar xfz Smarty-2.6.0.tar.gz
das entstande Verzeichnis wird per
cp -r Smarty-2.6.0 /wwwxxxx/pear/lib/php/Smarty-2.6.0
rm -r Smarty-2.6.0
nach pear/lib/php verschoben.
Da für Smarty allerdings nur die Scripte im Verzeichnis Smarty-2.6.0/lib benötigt werden kann man den Rest wegschmeißen:
cd /wwwxxxx/pear/lib/php/Smarty-2.6.0/
cp -r lib ../Smarty
cd ..
rm Smarty-2.6.0
nun muß man nur noch Smarty dem include_path hinzufügen wie schon zuvor Pear, was dann folgende Zeile Code ergibt:
ini_set('include_path',ini_get('include_path').'.:/wwwxxxx/pear/lib/php.:/wwwxxxx/pear/lib/php/Smarty');
Damit sind dann die Pear-Libraries und Smarty in demselben Projekt nutzbar.
Da ich dieses kleine HowTo nachträglich schreibe und nicht parallel zu meinen Installationsversuchen kann ich leider für nichts garantieren (nicht dass ich es könnte, wenn es anders wäre

), daher sind Korrekturen/Verbesserungsvorschläge gerne gesehen.
Vielleich wäre das auch was für die FAQs?