使用 --arch x86_64 选项编译 sip 时出现以下错误。
prosseek:siplib smcho$ python -c 'import sip; 打印啜饮' 回溯(最近一次通话最后): 文件“”,第 1 行,在 ImportError: dlopen(./sip.so, 2): 找不到合适的图像。发现: ./sip.so: mach-o,但架构错误
我发现预建的 Mac OS X python (snow leopard) 是通用的,它没有得到 64 位库。我猜它是在 32 位模式下运行的。
文件 /usr/bin/python /usr/bin/python:具有 3 种架构的 Mach-O 通用二进制文件 /usr/bin/python(用于架构 x86_64):Mach-O 64 位可执行 x86_64 /usr/bin/python(适用于 i386 架构):Mach-O 可执行 i386 /usr/bin/python(用于架构 ppc7400):Mach-O 可执行 ppc
prosseek:siplib smcho$ 文件 sip.so sip.so:Mach-O 64 位捆绑 x86_64
如何强制 python 在 64 位模式下运行?当我在 Textmate 上运行相同的代码时,没有问题。所以,我认为 Textmate 无论如何都应该在 64 位模式下运行。