Mac / Django错误消息:“/ mercurial / osutil.so:没有合适的64位架构”

时间:2009-12-22 17:49:46

标签: django macos mercurial 64-bit

我是Macs的新手(也是Django的新手),我正在新的Macbook Pro上建立一个使用Mercurial作为网站包的现有Django / MySQL网站。

安装过程中一切顺利 - 没有错误消息。我从macports安装了大多数软件包的默认版本。

但是当我尝试运行runserver时,localhost会显示以下错误消息:

ImportError at /
.../lib/python2.6/site-packages/mercurial/osutil.so: no appropriate 64-bit architecture (see "man python" for running in 32-bit mode)

请有人建议吗?我试过在终端输入以下内容:

defaults write com.apple.versioner.python Prefer-32-Bit -bool yes

但它没有帮助。

2 个答案:

答案 0 :(得分:3)

我遇到了类似的错误,两件事的组合帮我安装了Mercurial for OS X Lion。我正在运行OS X 10.7.3。

首先,setup.py脚本的第455行有一个错误(至少对于Mercurial 2.2.1,我试过的版本)。这条线

  

version = runcmd(['/ usr / bin / xcodebuild',' - version'],{})[0] .splitlines()

应替换为

  

version = runcmd(['/ usr / bin / xcodebuild',' - version'],{})[0]

其次,在我安装Mercurial后(通过easy_install,Mac OS X二进制安装程序和编译),我不断收到以下错误消息:

  

ImportError:dlopen(/Library/Python/2.7/site-packages/mercurial/osutil.so,2):找不到合适的图像。找到了:/ Library /Python/2.7/site-packages/mercurial/osutil.so:mach-o,但架构错误

然而,看到这篇文章后,我注意到了

  

默认读取com.apple.versioner.python Prefer-32-Bit

在我的系统上输出1。但是,运行此命令

  

默认写入com.apple.versioner.python Prefer-32-Bit -bool no

然后重新编译/安装mercurial在最后为我生成了一个可运行的可执行文件。

答案 1 :(得分:2)

如果我的评论中的所有内容都检出,请尝试在用户环境变量而不是命令行中设置Prefer-32-bit。

编辑此文件:〜/ .MacOSX / environment.plist

请参阅:

http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPRuntimeConfig/Articles/EnvironmentVars.html#//apple_ref/doc/uid/20002093-113982