WxPython与雪豹不兼容吗?

WxPython与雪豹不兼容吗?,第1张

WxPython与雪豹不兼容吗?

问题是WxPython仅在Mac上以32位模式提供;但是,默认情况下,Python将以64位模式启动。要解决此问题,请创建以下名为

python_32
:的shell脚本

#!/ bin / bash导出VERSIONER_PYTHON_PREFER_32_BIT =是/ usr / bin / python“ $ @”

使脚本可执行(

chmod a+xpython_32
),然后将脚本放在路径中。现在,只需调用
python_32
即可获得一个交互式Python控制台,您可以在其中使用WxPython。如果你想编写一个使用这个Python脚本,你可以使用家当:
#!/usr/bin/env python_32

现在解释一下…基本问题是32位和64位代码使用不同的应用程序二进制接口(ABI),因此32位代码和64位代码不能在同一库/可执行文件/进程中共存。为了支持64位模式,需要以64位模式进行编译。同样,要支持32位模式,必须以32位模式进行编译。在OS
X下,可以使用通用二进制文件来支持这两种格式……但是,它需要在两种模式下进行编译(然后合并)。WxWidgets可能使用Carbon,仅在32位模式下可用(Cocoa在32位和64位模式下都可用…由于过时了,Apple并没有在这两种模式下都可用Carbon),这就解释了为什么只能以32位模式提供WxPython的原因。反过来,

替代选项
我不建议您这样做,因为我认为您应该保留默认值,但是由于您可能没有足够的Shell脚本知识(您需要使用“
./python_32”或将其放置在以下目录中)列在“ $ PATH”环境变量中,并以“
python_32”的形式调用它)以遵循前一个选项,您可能只想执行以下命令即可将32位模式设置为默认命令:

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

如果您决定要切换回64位模式,则可以使用以下命令

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

请注意,这两个命令都将在终端上执行(不在Python中执行)。

资料来源
我应该指出,这两个建议都是基于Mac OS X上的man
python。因此,如果您有任何其他问题,您肯定应该阅读手册页,因为错误消息已促使您这样做。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5649432.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存