2012-05-04 37 views
19

Mam problem, który pochodzi od mnie po tutoriali bez zrozumienia, co robię. Uważam, że przyczyną problemu jest fakt, że nie rozumiem, jak działa system plików OS X.W jaki sposób Homebrew, PIP, easy_install itp. Działają tak, że mogę posprzątać

Problem jest większy niż w Pythonie, ale kiedy zacząłem uczyć się o Pythonie, zdałem sobie sprawę, jak niewiele rozumiem. Tak więc na początku zacząłem przestrzegać tutoriali, które doprowadziły mnie do użycia polecenia easy_install i kiedy wiele tutoriali zalecało PIP, nigdy go nie uruchomiłem. Tak więc uruchomiłem wiele poleceń i zainstalowałem wiele różnych pakietów.

Jak zrozumiałem, Lion ma zainstalowaną wersję Pythona. Używam tego dużo i od tego mam zainstalowane różne pakiety z easy_install. Czy istnieje sposób, aby powrócić do domyślnej instalacji i zacząć od samego początku? Czy to jest coś, co chcę robić? Jeśli tak, dlaczego?

Czy jest jakaś zaleta używania wersji Pythona, którą zainstalowałem z Homebrew? Jak mogę sprawdzić, skąd Python jest uruchamiany po uruchomieniu polecenia Python?

Kiedy instaluję coś z easy_install, homebrew, macports itp. Gdzie rzeczy faktycznie się kończą?

+0

Możesz sprawdzić lokalizację programu unix używając "which", czyli 'który python', działa również dla rzeczy takich jak:' which cd' To powinno wyprowadzić ścieżkę do wersji, której aktualnie używasz. – Lockyer

Odpowiedz

24

Homebrew instaluje swoje oprogramowanie wewnątrz podkatalogu /usr/local na komputerze Mac. OS X nie instaluje niczego samodzielnie; w rzeczywistości, /usr/local jest zarezerwowany dla rzeczy instalowanych przez użytkownika. Od Homebrew nie instaluje pliki poza /usr/local (a nawet nie mają zdolność do chyba uruchomieniu brew użyciu sudo - co jest nie recommended_) i OS X nigdy nie instaluje pliki wewnątrz tam, nigdy obie powinny mieszać.

easy_install i pip domyślnie instalują pliki w katalogach systemowych. Dlatego musisz uruchamiać te komendy za pomocą sudo, aby zainstalować z nimi pakiety.

Nie mogę polecić wystarczająco, virtualenv, niezależnie od tego, z jakiego systemu operacyjnego korzystasz. Instaluje kopię Pythona wraz z dowolnymi pakietami lub modułami w wybranym katalogu. Na przykład:

$ 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 

... a wszystkie ślady projektu zostały całkowicie wyeliminowane.

Użyj easy_install, aby zainstalować virtualenv w samym systemie OS X - tak jak zrobiłeś to w przypadku innych pakietów - ale potem wykonaj wszystkie nowe prace rozwojowe w izolowanych katalogach, które możesz wyczyścić w jednej chwili. Jest to normalny sposób opracowywania i wdrażania aplikacji Python w dzisiejszych czasach.

+1

Mogę cię pocałować. Dzięki, Captn. – o01

+0

Bez pocałunków, ale jesteś mile widziany. –

2

Zaletą korzystania z Pythona zainstalowanego za pośrednictwem menedżera pakietów, takiego jak Homebrew lub MacPorts, jest to, że zapewnia to prosty sposób na usunięcie instalacji i ponownej instalacji Pythona. Możesz także zainstalować nowszą wersję niż ta, którą zapewnia Mac OS X.

Powiązane problemy