【问题标题】:Mac OS Siera Python segfault 11Macos Sierra Python 段错误 11
【发布时间】:2017-10-01 03:37:54
【问题描述】:

所以我一直在我的机器上为我的妻子开发一个程序,那就是 windows。她最近终于有了一台笔记本电脑,所以我正在为她把所有东西都搬到那里。

经过几个小时的捣乱(不是 Mac 人,讨厌他们,现在我很沮丧哈哈)我似乎让一切都在运行,数据库工作并分发信息等,除了 - 当你开始使用该程序时,我收到分段错误 11 并立即崩溃。

我开始尝试在我的机器上使用 python 26 或 27 - 安装了 python 和一些我需要的库,但是每当我尝试构建 PySide 时,它​​都是一个史诗般的失败,要么不会工作,或在导入 QtCore 或 QtGui 时出错。 Qt4 也是不行的。

在玩了几个小时之后,我继续说去死,安装 pyqt5 并调整我的所有代码以适应(这很有趣)。正是在这一点上,我能够让它运行——直到出现分段错误。

一些研究让我了解到有关 Mac 上的一些截止日期错误的信息,说其他版本应该修复它,或者我可以应用一个补丁。我尝试在 sh ./patch_readline_issue_18458.sh 阶段应用补丁,该补丁本身会出现错误并尝试读取它。

sh ./patch_readline_issue_18458.sh
./patch_readline_issue_18458.sh: line 1: syntax error near unexpected token `newline'
./patch_readline_issue_18458.sh: line 1: `<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">'

最后我说我会咬更多的子弹并升级到 python 3...我的意思是它说它是为苹果编译它,它是新的...这不会有问题吗?

$ python3
Python 3.6.2 (v3.6.2:5fd33b5926, Jul 16 2017, 20:11:06) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

错误 - 仍然是段错误。

我不知道在这里做什么...有人知道如何帮助 Mac 菜鸟吗?

【问题讨论】:

  • 你自己编译了那个 python3 二进制文件吗? “GCC 4.2.1(Apple Inc. build 5666)(点 3)”是 4.1 版 XCode 的默认编译器,早在 2011 年......您使用的是什么版本的 OS X 和构建工具链?从MacPorts(各种开源软件)或Anaconda(带有许多默认包的优秀python发行版)安装你需要的一切可能会容易得多。
  • 原来是段错误导致我走错了方向。我认为这是一个构建问题,因为所有这些代码在 py27 和 qt4 中都运行良好。原来问题实际上是我用更新结果替换完成器的方式。如果我在现有的完成程序上调用了 .deleteLater(),并在创建新的完成程序并分配它之前将行 eidts 完成程序设置为无,那么一切正常。很抱歉误报!

标签: python macos segmentation-fault macos-sierra


【解决方案1】:

原来是段错误导致我走错了方向。我认为这是一个构建问题,因为所有这些代码在 py27 和 qt4 中都运行良好。原来问题实际上是我用更新结果替换我的完成者的方式。如果我在现有的完成程序上调用 .deleteLater(),并在制作新的完成程序并分配它之前将行 eidts 完成程序设置为无,那么一切正常。很抱歉误报!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 2020-12-17
    • 2018-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多