2010-11-10 250 views
3

我试图对通过将我的Macintosh升级到10.6所产生的一系列问题进行排序。我需要的大多数工具都是工作的,但一对夫妇(scipy,wxpython)却没有,并且给出了高度暗示我用64位和32位二进制文​​件搞乱了某些东西的错误消息。Macintosh Python:64位与32位问题

我目前正在运行Python 2.7。我不知道它是32位还是64位版本。我如何看?

我最关心的是我有一些奇怪的32位和64位混合,我应该取消一切并重新安装。如果我这样做了,而且我想避免尽可能多的构建问题,请执行以下操作:(1)安装32位版本,(2)安装64位版本并确保我构建的所有内容都启用了64位,或(3)其他。

我已经试过没有运气找到关于这个网页,因为其他人一定是偶然发现了这些问题,但我很抱歉,如果我在这里重新讨论老问题。我也非常努力地不去输入攻击性陈述“我不在乎32位和64位,我只是想Python到工作”,但实际上,这就是我在这里问的。

感谢任何人都可以帮助我排序这一点,并道歉,如果我只是密集。

+1

运行此脚本:'import platform; platform.architecture()'。它说什么? – 2010-11-10 15:59:19

+0

是numpy等编译与i386和x86_64体系结构? – GWW 2010-11-10 18:52:14

+0

>>>导入平台; platform.architecture() ('64bit','') – Rick 2010-11-10 19:24:26

回答

1

我也有升级的主要问题,所以你并不孤单,只是晚了一点。

找出你有什么样的二进制中,file命令是您的朋友:

$ file /usr/local/bin/python 
/usr/local/bin/python: Mach-O universal binary with 2 architectures 
/usr/local/bin/python (for architecture i386): Mach-O executable i386 
/usr/local/bin/python (for architecture x86_64): Mach-O 64-bit executable x86_64 

您也可能会建议使用MacPorts或(甚至更好)HomeBrew

如果您已经在使用MacPorts并且什么都不能工作,您甚至可能需要卸载它并从头开始使用Homebrew。它让你迅速到达地狱不那么热的地步。之后,您只需要弄清楚如何将该重要的深奥图书馆编译到正确的架构。

+0

我一直想尝试HomeBrew或Ports一段时间。也许我应该跳进来。我从来没有对芬克那么满意,所以自那时起我一直在编辑自己的文章。 – Rick 2010-11-10 19:26:43

1

对于wxPython中,尝试使用这个家当作为脚本的第一行:

#!/usr/bin/arch -arch i386 python2.7 

,或者在命令行用

arch -arch i386 python2.7 yourScript.py 

基本上运行,你的Python可执行文件应包括32位bit和64位版本,'arch'命令告诉系统运行哪一个版本。