[英]How do Homebrew, PIP, easy_install etc. work so that I can clean up
我有一個問題,來自我的教程,而沒有真正理解我在做什么。 我認為問題的根源是我不明白OS X文件系統的工作原理。
問題比Python更大,但是當我開始學習Python時,我意識到我真的很難理解。 所以在開始的時候我開始關注教程,這導致我經常使用easy_install命令,當很多教程推薦PIP我從來沒有運行它。 所以我運行了很多命令並安裝了很多不同的包。
據我所知,Lion附帶了一個python安裝程序。 我一直在使用它,因此我安裝了easy_install的各種軟件包。 有沒有辦法回到默認安裝並從一開始就開始? 這是我想做的事嗎? 如果是這樣的話?
使用我用Homebrew安裝的Python版本有什么好處嗎? 當我運行Python命令時,如何查看Python的運行位置?
當我用easy_install,homebrew,macports等安裝東西時,實際上最終會有什么東西?
Homebrew將其軟件安裝在Mac上的/usr/local
子目錄中。 OS X不會自行安裝任何東西; 實際上, /usr/local
是為用戶安裝的東西保留的。 由於Homebrew永遠不會在/usr/local
之外安裝文件(甚至沒有能力,除非你使用sudo
運行brew
- 這是不推薦的)並且OS X從不在那里安裝文件,所以兩者不應混合。
默認情況下, easy_install
和pip
將文件安裝到系統目錄中。 這就是為什么你必須用sudo
運行這些命令來安裝它們的包。
無論你使用哪種操作系統,我都不能推薦virtualenv 。 它會在您選擇的目錄中安裝Python的副本以及您需要的任何軟件包或模塊。 例如:
$ 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
......而且項目的所有痕跡現在都完全消失了。
使用easy_install
將virtualenv安裝到OS X本身 - 就像你為其他軟件包做的那樣 - 但是然后在隔離的目錄中進行所有新的開發,你可以立即擦除干凈。 這幾乎是目前開發和部署Python應用程序的標准方法。
使用像Homebrew或MacPorts這樣的軟件包管理器安裝Python的優點是,這提供了一種刪除Python安裝並重新安裝它的簡單方法。 此外,您可以安裝比Mac OS X提供的版本更新的版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.