我尝试在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 ?
我尝试在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 ?
当前回答
我相信有办法使自制python成为默认的,但在我看来,解决问题的正确方法是不要打乱系统python路径:最好是创建一个virtualenv,其中自制python将是默认的(通过使用virtualenv——python选项)。使用像python_select这样的工具几乎总是一个坏主意。
其他回答
快速修复:
打开/etc/paths 更改行顺序(最高优先级在最上面)
在我的例子中,/etc/paths看起来像:
/usr/local/bin
/usr/local/sbin
/usr/bin
/bin
/usr/sbin
/sbin
如果你想了解更多关于OSX中的路径,我发现这篇文章非常有用:
http://muttsnutts.github.com/blog/2011/09/12/manage-path-on-mac-os-x-lion/
Homebrew不会替换“/usr/bin”中的内容。你只需要把“/usr/local/bin”放在“/usr/bin”之前,然后“哪个python”会给你“/usr/local/bin/python”。
不建议替换/usr/bin/python(或/usr/bin/ruby)。
您可以编辑/etc/paths以下是我的看法:
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
然后为python版本添加符号链接。对我来说
$ cd /usr/local/bin
$ ln -s python3 python
拖鞋!
由于High Sierra,你需要使用:
sudo chown -R $(whoami) $(brew --prefix)/*
这是因为/usr/local不能再被切
参见:如何在Homebrew中使用python符号链接?
$ brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.3... 28 symlinks created
$ which python
/usr/local/bin/python