我可以在OS X的现有32位安装上安装Python 2.7.1 64位吗?

时间:2011-05-17 14:34:43

标签: python django macos osx-snow-leopard homebrew

简短描述
是否可以在Python 2.7.1 32bit的现有安装(来自python.org)之上从python.org安装Python 2.7.1 64/32位?

背景
我为wxPython(2.8)支持安装了32位版本,直到现在我已经给了我零问题。我现在有一些难以安装的模块(psycopg2和mysql-python)。自制软件中的警告消息不断警告我,路径上没有64位版本的Python。这些警告只会添加到我想要使用64位版本的列表中。

在我选择32位安装时,特定项目的GUI是主要关注点。现在GUI变得非常简单,数据库后端支持(使用Django)更为重要。话虽这么说,使用wxPython 2.9的开发版本(支持OS X和64bit 2.7)已经可以接受了。

对于非mac用户,为了帮助解释我必须使用32位版本的原因,请参阅此Brief guide to using virtualenv in a wxpython project

系统信息
开发系统
操作系统: Mac OS X Snow Leopard(10.6.7)
Python: 2.7.1 with virutalenv / virutalenv-wrapper
项目依赖项:
请注意,如果我可以使用自制软件安装postgresql,那么MySQL可能是PostgresSQL的psycopg2

  

的Django == 1.2.5
  在MySQL-python的== 1.2.3
  PIL == 1.1.7
  PyVISA == 1.3
  pyserial == 2.5
  的virtualenv == 1.5.1
  virtualenvwrapper == 2.6.3
  ==的wsgiref 0.1.2
  wxPython的== 2.8.11.0
  wxPython-common == 2.8.11.0

部署系统
操作系统: Windows XP / Windows 7
Python:希望没有(使用py2exe或类似工具的目标)

当前的想法
我担心单靠文件路径无法实现我的目标。在Windows 7中,标识符(x86)放在显示它是32位程序的路径中,但在OS X上,路径对于32位或64/32位安装是相同的(/ Library / Frame /Python.framework / Version / 2.7 /)。

任何想法或评论都会有所帮助!

更新5-18-2011:上午8:40
我已经确认使用预编译(.dmg)框架构建,安装64位版本吹走32位安装。这对我的虚拟环境产生了负面影响,因为我在环境中安装的所有东西都基于32位安装,几乎每个模块都会抛出某种错误。

我仍然没有在同一台机器上安装32位和64位,但是更详细地查看homebrew确实看起来可以。诀窍是为每个python构建(从源代码)定义自己的公式,并将安装目录重命名为'Python27_32'和'Python27_64'。我会有时间探索这个方面。

编辑7-12-2011:美国中部时间上午10:51
有没有人能够控制自制程序的编译选项?具体如何选择使用64位编译器还是32位编译器?如果不提出任何问题,我会创建一个新的SO问题。

3 个答案:

答案 0 :(得分:2)

查看http://www.macports.org/其中提供了各种版本的linux / unix工具的端口,这些端口没有出现在默认的MacInstallation中,并复制了它们需要的其他工具。它安装在/ opt / local中,而不是踩在已安装的基础上。通过对PATH和LD_LIBRARY_PATH的一些操作,这可能会为您提供所需的选项。

答案 1 :(得分:0)

我会使用virtualenv之类的东西。这样你可以根据需要安装许多不同的python。

编辑:要使用不同版本的python:

virtualenv -p python2.6

Reference

答案 2 :(得分:0)

在针对Windows世界中使用虚拟环境的one of my questions答案中提供的另一种可能的解决方案是使用Buildout。这种方法看起来可以让我创建一个安装了32位的环境和另一个安装了64位的环境。

我还没有对此进行测试,但希望将其传递给尝试此专长的其他任何人。

干杯!