我尝试在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酿造风味成为我的默认python ?


当前回答

参见:如何在Homebrew中使用python符号链接?

$ brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.3... 28 symlinks created
$ which python
/usr/local/bin/python

其他回答

您可以编辑/etc/paths以下是我的看法:

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

然后为python版本添加符号链接。对我来说

$ cd /usr/local/bin
$ ln -s python3 python

拖鞋!

不知道你说的默认Python是什么意思。我认为用不同的版本替换系统Python解释器是不好的做法。系统功能可能在某种程度上取决于系统Python和特定模块或特定的Python版本。相反,将您的自定义Python安装安装在一个安全的不同位置,并根据需要调整您的$PATH,以便通过路径查找调用您的Python,而不是寻找默认的Python。

当你在使用Homebrew时,下面的命令会给你一个更好的画面:

brew doctor

输出:

==> /usr/bin出现在/usr/local/bin之前。这意味着系统提供的程序将被使用,而不是由 家酿。这是一个问题,如果你。brew安装Python。 考虑编辑.bash_profile,将:/usr/local/bin放在前面 /usr/bin

我为OSX High Sierra“brew install python”。$PATH在任何其他路径之前都有/usr/local/bin,但仍然是python指向系统的python。

当我深入研究时,我发现/usr/local/bin目录下没有python可执行文件。可执行文件名为python2。要解决这个问题,创建一个指向python2的符号链接python:

/usr/local/bin $: ln -s python2 python

Homebrew不会替换“/usr/bin”中的内容。你只需要把“/usr/local/bin”放在“/usr/bin”之前,然后“哪个python”会给你“/usr/local/bin/python”。

不建议替换/usr/bin/python(或/usr/bin/ruby)。