Pycharm 调试器立即退出 139 代码
Posted
技术标签:
【中文标题】Pycharm 调试器立即退出 139 代码【英文标题】:Pycharm debugger instantly exits with 139 code 【发布时间】:2017-12-14 10:44:58 【问题描述】:从Pycharm 2017.2.3
升级到Pycharm 2017.1.4
Pycharm 的调试器建议构建cpython(或与之相关的某事):
path/to/my/python /opt/pycharm-community-2017.1.4/helpers/pydev/setup_cython.py build_ext --inplace
在我这样做之后,Debugger 现在立即返回此错误:
进程以退出代码 139 结束(被信号 11:SIGSEGV 中断)
我发现 cpython 也有类似的问题 (https://youtrack.jetbrains.com/issue/PY-23273) 但我不能使用那里提到的解决方法,因为我错过了它建议删除的文件...... 我没有使用 cython,我希望我忽略这条关于构建它的消息..
我在 linux (SMP Debian 3.16.36-1+deb8u1 (2016-09-03) x86_64 GNU/Linux
)
Python 2.7
【问题讨论】:
您是否尝试过创建新的调试运行配置? 是的,我做了,没有变化。 无论python版本如何,这似乎都会发生。我在尝试在 Pycharm Pro 版本的远程机器上调试代码时得到它;我使用的解释器是 python3.5,来自 anaconda 环境。禁用 PyQt(参见 re-gor 的回答)解决了这个问题。 【参考方案1】:我已通过在 PyCharms 的调试器设置(构建、执行、部署 > Python 调试器)中禁用 PyQt compatible
选项来修复它。我没有使用PyQt,所以我没有遇到任何麻烦
【讨论】:
@Mike 不,我没有,抱歉。我从未使用过 PyQt。 我安装了 PySide2,但没有安装 PyQt。禁用PyQt compatible
对我有用,并将其设置为PySide
。但是,将其设置为 PySide2
并不起作用,即使我已经安装了它
为我工作。谢谢
我在调试 PyTorch 时尝试过这个,但它没有解决我的问题【参考方案2】:
转到 pycharm -> 首选项 -> 构建、执行和部署 -> Python 调试器
复选框收集运行时类型信息以了解代码。
这为我解决了问题。
【讨论】:
这并没有解决我调试 pytorch 的问题 谢谢!这对我有用。相比之下,我尝试的其他答案(选中 Gevent 并取消选中 PyQt)并没有为我解决问题。【参考方案3】:在更新和安装 Cython 以进行快速调试后,我在 2018.3 中遇到了同样的问题。
问题在于 gevent
库。
解决了启用Gevent compatible
选项和禁用PyQt 兼容的问题。
【讨论】:
调试 pytorch,这并没有解决问题【参考方案4】:我确实将 Pycharm 从 2017.1.4
更改为 Pycharm EAP 2017.2
,但没有任何效果。
我通过创建新的 python 虚拟环境并将默认的 Pycharm 解释器更改为它解决了这个问题。我猜这不是最快的解决方案,但至少它奏效了。
Pycharm 现在再次提出为 Cython 构建东西的建议,但现在我只是忽略它。
【讨论】:
【参考方案5】:我同意詹姆斯的观点。
我在安装 PYQT 后遇到了和你一样的问题。在我通过 Pycharm 的“Preference->Project:your current project->Project Interpreter”卸载 pyqt 后,找到 pyqt 并按下“-”按钮,调试工作。
有趣的是,当我运行一个包含“from PyQt4 import QtGui”的脚本时。 pyqt 包自动安装。并且调试不再起作用。所以我再次卸载了pyqt并再次调试工作!
所以我认为可能有一些包 make debug not work ,你应该做的就是找到并卸载它。犯罪包通常是 pyqt、matplotlib 或类似的东西。
【讨论】:
【参考方案6】:遇到这个问题,找了半天,都是pyqt的兼容造成的,所以我觉得解决的好办法....
卸载 pyqt 和 matplotlib 先安装pyqt 第二次安装matplotlib那么问题就愉快的解决了。
【讨论】:
在 PyCharm 更新到 2018.3.1(专业版)后,我也遇到了同样的问题。我正在测试的代码可以在之前进行调试,但在更新后不能。卸载并重新安装 pyqt,matplotlib 工作正常。 @re-gor 解决方案曾经奏效。我重新创建了我的环境,现在我没有问题(至少有几个调试)【参考方案7】:在我删除 pyqt5 绑定后,我的工作正常。
sudo apt-get remove python3-pyqt5
由于构建了 cpython,这并没有发生在我身上。这是因为我安装了一个不相关的程序。希望对您有所帮助。
【讨论】:
【参考方案8】:我主要是随机启用和禁用Attach to subprocess automatically while debugging
和PyQt compatible
,直到找到对我来说稳定的版本。最终它稳定在Attach to subprocess automatically while debugging
启用和PyQt compatible
在自动启用。
我也关注了
- uninstall pyqt and matplotlib
- Fist install pyqt
- Second install matplotlib
【讨论】:
【参考方案9】:我和 2017.1.4 也是一样的 更新到 2017.1.5 后问题已解决
【讨论】:
【参考方案10】:尝试清除所有断点。为我工作。还要检查你在运行而不是调试时没有问题。
【讨论】:
以上是关于Pycharm 调试器立即退出 139 代码的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 Rider 调试使用 docker 容器和 docker-compose 构建的 .net 核心应用程序。容器退出代码 139
Pycharm 调试:发生错误时,程序在本地退出,但在远程可以查看变量。如何在本地激活它?
在 Pycharm 调试模式下,如何跳出我的代码而不是跳出库源?