我遇到了这个(显然是旧的)问题。我的代码中的小的,无关紧要的更改导致我的程序崩溃并抛出
分段错误11。
我在OS 10.11上使用Python 3.4.4和Kivy 1.9。 (编辑:调查显示Kivy与3.5.0捆绑在一起)
编辑:微小的变化是我有一个创建Popup的方法,然后在创建后编辑属性。我最初在游戏对象的 init 语句中调用了这个方法。我想清理它,所以我将Popup分类并将属性放在新类的 init 语句中,然后在同一个地方调用它的构造函数。我离开了这个:
self.create_start_game_popup()
#within the method is "self.startpopup = Popup()"
到此:
self.startpopup = StartPopup()
修改 根据要求,这是我尝试的修复,以免依赖外部链接。
到目前为止,我已尝试this fix,正如另一篇Stackoverflow帖子中所建议的那样:
cd /Library/Frameworks/Python.framework/Versions/3.3
cd ./lib/python3.3/lib-dynload
sudo mv readline.so readline.so.disabled
我发现这个已解决的错误引用了OS 10.9,尝试了this comment中推荐的修补程序,但没有找到任何特定于OS 10.11或者实际上对我有用的内容。
补丁是一个临时修复,正如Python错误票据的评论中所建议的那样,而错误是在Python 3.3.2和3.3.3之间修复的。它已经在OS 10.9上的3.3.3中得到了验证
在python.org 2.7.6和3.3.3维护版本中提供更新的readline模块之前,这里有一个脚本可以检查python.org版本的Python 2.7.x,3.2.x,3.3.x和3.4.x用于交互式崩溃,并将根据需要修补问题。在大多数系统上,您需要在具有管理员权限的帐户下运行它。
要使用它,请在Terminal.app(或其他shell)中打开终端会话,然后输入:
curl -O http://bugs.python.org/file32324/patch_readline_issue_18458.sh openssl sha1 patch_readline_issue_18458.sh #the digest should be 7cb0ff57820a027dd4ca242eb2418930f8f46b4c) sh ./patch_readline_issue_18458.sh
关于下一步该怎么做的任何想法?