python自制默认情况下
我尝试在Mac OS X 10.6.2上切换到Homebrew(使用fink和macport之后)。 我已经安装了Python 2.7
brew install python
问题是,与Macport相反,似乎没有python_select实用程序,并且我的默认mac python总是默认的
which python
给我吗
/usr/bin/python
和/usr/bin/python
不是符号链接
我该如何做python brew的味道是我的默认python?
正如你使用自制软件,下面的命令给出了一个更好的图像:
brew doctor
输出:
==> / usr / bin出现在/ usr / local / bin之前这意味着将使用系统提供的程序来代替Homebrew提供的程序。 这是一个问题,如果你例如。 brew安装Python。
考虑编辑你的.bashrc,把/ usr / local / bin放在$ PATH的/ usr / bin之前。
请参阅: 如何符号链接python在Homebrew?
$ brew link --overwrite python Linking /usr/local/Cellar/python/2.7.3... 28 symlinks created $ which python /usr/local/bin/python
快速解决:
- 打开
/etc/paths
- 改变行的顺序(最高优先级)
在我的情况下, /etc/paths
如下所示:
/usr/local/bin /usr/local/sbin /usr/bin /bin /usr/sbin /sbin
如果你想了解更多有关OSX的path,我发现这篇文章相当有用:
http://muttsnutts.github.com/blog/2011/09/12/manage-path-on-mac-os-x-lion/
Homebrew不会replace“/ usr / bin”中的内容。 你只要把“/ usr / local / bin”放在path的“/ usr / bin”之前,那么“哪个python”会给你“/ usr / local / bin / python”。
replace/ usr / bin / python(或/ usr / bin / ruby)是非常不推荐的。
修改你的$ PATH,在你的bashrc或bash_profile中join:
export PATH=/usr/local/bin:/usr/local/sbin:~/bin:$PATH
更多点击这里: 问题#89791
你需要编辑你的PATH环境variables,以确保在/ usr / bin之前search到了自制Python的位置。 你也可以在你的shellconfiguration文件中设置一个像PYTHON这样的variables来设置你想要的python版本,并从命令行调用$PYTHON
而不是python
。
此外,正如另一张海报(特别是在Mac上)不要搞乱/ usr / bin中的python指向另一个python安装。 如果你这样做,你只是要求麻烦。
我没有brew install python
,我的$PATH
是好的,但仍然, which python
给我系统安装一个。 重新启动terminal固定它。
我相信有办法使自制软件python默认,但在我看来,解决问题的正确方法是不要混淆系统pythonpath:最好是创build一个virtualenv,其中自制软件python默认(通过使用virtualenv – -python选项)。 使用像python_select
这样的工具几乎总是一个坏主意。
不知道你用默认的Python是什么意思。 我认为用不同的版本replace系统Python解释器是个不好的做法。 系统function可能在某些方面取决于系统的Python和特定的模块或特定的Python版本。 相反,将自定义Python安装安装在一个安全的地方,并根据需要调整$ PATH,以便通过path查找来调用Python而不是查找默认的Python。