Normalerweise bastele ich mir für meine PHP Experimente eine VMware mit einem Debian. Da ist die Installation schnell erledigt und man „versaut“ sich auch nicht das eigene System. Nun bereite ich mich aber auf einen Vortrag vor und möchte auch ein paar PHP Nettigkeiten zeigen und benötige dazu ein funktionierendes PEAR unter Macos X Lion. Ich war sehr überrascht, dass pear nicht installiert ist.
Natürlich gibt es hierfür eine Lösung und die Grundlagen werden gleich mitgeliefert. Zuerst installiert man sich pear mit folgendem Aufruf:
$ sudo php /usr/lib/php/install-pear-nozlib.phar
Macos fragt zuerst nach dem Passwort, da man mit sudo arbeiten will. Anschließend erhält man auch umgehend ein paar Informationen was da installiert wurde und auch den Hinweis, welchen Pfad man noch in der php.ini
ergänzen muss.
Password: [PEAR] Archive_Tar - installed: 1.3.7 [PEAR] Console_Getopt - installed: 1.3.0 [PEAR] Structures_Graph- installed: 1.0.4 [PEAR] XML_Util - installed: 1.2.1 [PEAR] PEAR - installed: 1.9.2 Wrote PEAR system config file at: /private/etc/pear.conf You may want to add: /usr/lib/php/pear to your php.ini include_path
Okay, also schnell unter /etc/php.ini
den Pfad eintragen. Jedoch gibt es hier gar keine php.ini
. Aber diese kann man umkopieren von /etc/php.ini.default
. Da man hier in den Systemverzeichnissen rumspielt geschieht auch dies wieder mit sudo
.
sudo cp /etc/php.ini.default /etc/php.ini
Die php.ini
ist an ihrem Platz also kann sie nun auch angepasst werden. Hierzu benutzt man wieder sudo
und öffnet die Datei in einem Editor der Wahl. Ich nehme mal eben vim
.
sudo vim /etc/php.ini
Jetzt sucht man sich noch den include_path
für Unix und ergänzt den Pfad, den Pear vorgeschlagen hat.
;;;;;;;;;;;;;;;;;;;;;;;;; ; Paths and Directories ; ;;;;;;;;;;;;;;;;;;;;;;;;; ; UNIX: "/path1:/path2" include_path = ".:/php/includes:/usr/lib/php/pear"
Anschließend kann man mit sudo pear wie gewohnt Pear-Pakete installieren. Ich habe dann gleich nach der Anleitung von Daniel (ebene7) phpunit installiert. Funktioniert auch bei Macos ;).