OS X上的Python升级问题

时间:2011-01-14 22:10:29

标签: python macos

我有OS X 10.6.6 Snow Leopard。在X-bit模式下,OS X默认安装的python是2.6.1。 Apple很好地安装了几个python扩展,例如numpy和Apple Events的几个框架。

大多数建议不要在OS X上升级默认的Perl,因为操作系统在发布时依赖于Perl的某些行为。 Python社区似乎更乐观,recommends

  

压倒性的建议   “MacPython”社区正在升级   通过下载和你的Python   从中安装更新的版本   Python标准发布页面

我已经完成了两次升级尝试。第一次尝试是通过MacPorts安装Python 2.7.1。第二个是从Python standard release page直接下载Python 2.7.1。

事实:

  1. MacPorts版本安装在/opt/local/bin/python中,框架位于/opt
  2. 默认的OS X python 2.6.1和2.5.4保留在/usr/bin
  3. /System/Library/Frameworks/Python.framework包含python v 2.3,2.5,2.6和“Current”的框架。 “当前”是空的。
  4. python网站的下载安装在/usr/local/bin,是指向/Library/Frameworks/Python.framework/Versions 2.7
  5. 的链接
  6. 我的路径已设置,因此MacPorts版本是路径中的第一个。
  7. 问题和问题:

    1. MacPorts版本无法运行pydocs -g。它失败并出现错误:TclError: out of stack space (infinite loop?)我试图下载Tkinter的macports版本,但仍然没有快乐。想法?
    2. 我可以通过Apple安装的python支持模块进行迁移,还是需要手动重新安装每个?
    3. 我可以删除/System/Library/Frameworks/Python.framework中的python 2.3框架吗?在/usr/bin目录中似乎没有指向这些可执行文件的链接。
    4. 如果“MacPython”社区的建议是“升级”,为什么系统版本保持不受2.7.1 python下载的影响?
    5. 一旦我找出所有这些版本,在安装的不同版本的python之间共享模块的“最佳实践”是什么?

2 个答案:

答案 0 :(得分:1)

  

1。 MacPorts版本无法运行pydocs -g。它失败并出现错误:TclError:堆栈空间不足(无限循环?)我试图下载Tkinter的macports版本,但仍然没有快乐。想法?

我不是MacPorts的用户,因此我对此项目没有任何想法。

  

2。我可以通过Apple安装的python支持模块进行迁移,还是需要手动重新安装每个模块?

手动重新安装每一个。我建议在一个或多个virtualenv环境中安装它们,以免污染全局site-packages目录。

  

3。我可以删除/System/Library/Frameworks/Python.framework中的python 2.3框架吗?在/ usr / bin目录中似乎没有指向这些可执行文件的链接。

我不会删除/System/Library/Frameworks/中的任何内容。正如Alex Martelli in his answer to this SO question所述,“你不应该以任何方式篡改系统提供的Python。”

  

4。如果“MacPython”社区的建议是“升级”,为什么系统版本保持不受2.7.1 python下载的影响?

虽然他们使用“升级”这个词,但他们的意思是执行全新安装,而不是使用/触摸Apple安装版本。

  

5。一旦我弄清楚所有这些版本,在安装的不同版本的python之间共享模块的“最佳实践”是什么?

virtualenv

有关我如何安装Python和各种软件包的信息,请查看以下StackOverflow问题:

使用Python.org DMG将执行位于/Library/Frameworks/Python.framework/

中的Python Framework安装

答案 1 :(得分:0)

我找到答案的唯一地方: Follow the sheep blog

关于问题#1的所有回答:跟随羊的所有信用:MacPorts& TCL线程......