设置当前安装的符号链接的最佳方法是什么,例如python - > python2.6的

时间:2009-12-30 20:07:39

标签: python macos macports

设置当前安装的符号链接的最佳方法是什么,例如python - > python2.6的?

我刚刚在/opt/local/bin/python2.6通过Macports安装了python2.6,我现在想在/ usr / local / bin /设置一个名为python的符号链接。然后我希望能够在我的pythons脚本的开头添加这一行,以便它知道在哪里看:#!/ usr / local / bin / python。但是当我将python升级到python2.7时会发生什么,我是否只需要记住转到我的符号链接并进行更改?我想我会记得因为它可能不再适用了吗?有更好的方法吗?

3 个答案:

答案 0 :(得分:4)

默认情况下,MacPorts会仔细并谨慎地将所有内容安装到单独的目录空间中:/opt/local。这可确保它不会与作为OS X或第三方的一部分安装的任何内容冲突。为确保首先找到安装了MacPorts的可执行文件,建议的解决方案是修改您的shell PATH以将/opt/local/bin放在/usr/bin之前。

MacPorts还提供了一个特殊的端口包python_select,用于管理python/opt/local/bin命令指向的python版本。

sudo port install python_select
sudo python_select

然后,为了使您的脚本使用当前首选的python,传统的解决方案是使用脚本的env program in the shebang line

#!/usr/bin/env python

答案 1 :(得分:1)

符号链接您最常用的版本。

当您需要其他版本时,请通过指定版本号来运行它,例如:

$ python2.5 dev_appserver.py myapp

答案 2 :(得分:-3)

不确定OSX,这是我在Ubuntu 9.04上做的事情:

>which python
#/usr/bin/python

只需用符合您实际想要使用的Python版本的sym链接替换该文件:

>sudo ln -s /usr/bin/python2.6/python /usr/bin/python