Macintosh Python:64位与32位问题

时间:2010-11-10 15:52:21

标签: python

我正试图解决因将macintosh升级到10.6而引起的一系列问题。我需要工作的大多数工具,但是一些(scipy,wxpython)没有,并且提供错误消息,这些消息高度暗示我弄乱了64位和32位二进制文​​件。

我目前正在运行Python 2.7。我不知道它是32位还是64位版本。我怎么说?

我最关心的是我有一些32位和64位的奇怪混合,我应该废弃一切并重新安装。如果我这样做,并且我想避免尽可能多的构建问题,我是否(1)安装32位版本,(2)安装64位版本并确保我构建的所有内容都是64位启用的,或(3)别的东西。

我试过没有运气找到有关这方面的网页,因为其他人一定是偶然发现了这些问题,但如果我在这里重新讨论旧问题,我会道歉。我也非常努力地不输入令人反感的声明“我不关心32位vs 64位,我只是想让Python 工作”,但是,实际上,这就是什么我问这里。

对任何人的感激之情可以帮助我解决这个问题,并且如果我只是在密集而道歉。

2 个答案:

答案 0 :(得分: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。它可以让你快速到达地狱不太热的地步。之后,您只需要弄清楚如何将这个重要的深奥库编译到正确的架构中。

答案 1 :(得分:1)

对于wxPython,尝试使用此shebang作为脚本的第一行:

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

或者使用

从命令行运行
arch -arch i386 python2.7 yourScript.py

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