2012-05-04 2 views
19

Ich habe ein Problem, das kommt von mir folgenden Tutorials ohne wirklich zu verstehen, was ich tue. Die Wurzel des Problems ist meiner Meinung nach die Tatsache, dass ich nicht verstehe, wie das OS X-Dateisystem funktioniert.Wie funktioniert Homebrew, PIP, easy_install usw., so dass ich aufräumen kann

Das Problem ist größer als Python, aber als ich anfing, etwas über Python zu lernen, wurde mir klar, wie wenig ich wirklich verstehe. Am Anfang habe ich angefangen Tutorials zu folgen, was mich dazu gebracht hat den easy_install Befehl zu benutzen und wenn viele Tutorials PIP empfohlen haben, habe ich es nie am Laufen bekommen. Ich habe also viele Befehle ausgeführt und viele verschiedene Pakete installiert.

Wie ich verstanden habe, kommt Lion mit einer Python-Installation. Ich habe das schon oft benutzt und davon verschiedene Pakete mit easy_install installiert. Gibt es einen Weg, um zur Standardinstallation zurückzukehren und von Anfang an zu beginnen? Will ich das machen? Wenn ja warum?

Gibt es einen Vorteil der Verwendung einer Python-Version, die ich mit Homebrew installiert habe? Wie kann ich sehen, von wo Python ausgeführt wird, wenn ich den Python-Befehl ausführen?

Wenn ich etwas mit easy_install, homebrew, macports usw. installiere, wo enden die Dinge tatsächlich?

+0

Sie können den Speicherort eines Unix-Programms mit "which", z. B. 'which python', überprüfen, es funktioniert auch für Dinge wie:' what cd' Das sollte den Pfad zu der Version, die Sie gerade verwenden, ausgeben. – Lockyer

Antwort

24

Homebrew installiert seine Software im Unterverzeichnis /usr/local auf Ihrem Mac. OS X installiert dort selbst nichts; In der Tat ist /usr/local für Benutzer-installierte Sachen reserviert. Da Homebrew nie Dateien außerhalb /usr/local installiert (und hat noch nicht einmal in der Lage zu sein, es sei denn, Sie brewsudo mit laufen - was nicht recommended_ ist) und OS X installiert nie Dateien innerhalb dort, niemals werden die beiden mischen.

easy_install und pip Dateien standardmäßig in Systemverzeichnisse installieren. Deshalb müssen Sie diese Befehle mit sudo ausführen, um Pakete mit ihnen zu installieren.

Ich kann virtualenv nicht genug empfehlen, unabhängig davon, welches Betriebssystem Sie verwenden. Es installiert eine Kopie von Python zusammen mit allen gewünschten Paketen oder Modulen in einem Verzeichnis Ihrer Wahl. Zum Beispiel:

$ cd /tmp 
$ virtualenv foo   
New python executable in foo/bin/python 
Installing setuptools............done. 
Installing pip...............done. 
$ cd foo 
$ bin/pip install sqlalchemy 
Downloading/unpacking sqlalchemy 
    Downloading SQLAlchemy-0.7.7.tar.gz (2.6Mb): 2.6Mb downloaded 
    Running setup.py egg_info for package sqlalchemy 
[...]  
Successfully installed sqlalchemy 
Cleaning up... 

[work, work, work] 
[decide this was a bad idea] 
$ cd /tmp; rm -rf foo 

... und alle Spuren des Projekts sind jetzt komplett weg. Verwenden Sie easy_install Verwenden Sie easy_install Verwenden Sie easy_install, um virtualenv in OS X selbst zu installieren - wie Sie für diese anderen Pakete getan haben - aber dann alle neuen Entwicklungen in isolierten Verzeichnissen, die Sie sofort löschen können. Dies ist heutzutage die Standardmethode für die Entwicklung und Bereitstellung von Python-Anwendungen.

+1

Ich könnte dich küssen. Danke Captn. – o01

+0

Keine Küsse notwendig, aber Sie sind herzlich willkommen. –

2

Der Vorteil der Verwendung eines Python, der über einen Paketmanager wie Homebrew oder MacPorts installiert wird, wäre, dass dies eine einfache Möglichkeit bietet, die Python-Installation zu entfernen und neu zu installieren. Sie können auch eine neuere Version als die von Mac OS X installieren.

Verwandte Themen