【发布时间】:2018-05-28 01:41:28
【问题描述】:
我正在尝试使用 PyCharm 2017.3 附加到在本地机器上运行的一些 Python 进程。我的理解是它会打开调试器窗口,显示附加的进程,显示调用堆栈并让我添加断点。但我什么也没得到——没有反应,没有调试器控制台弹出,好像什么都没发生一样。
此功能需要任何设置才能工作?
我在 Ubuntu 16.04 64 位上运行 Python 3.6.3 和 pyenv。
【问题讨论】:
我正在尝试使用 PyCharm 2017.3 附加到在本地机器上运行的一些 Python 进程。我的理解是它会打开调试器窗口,显示附加的进程,显示调用堆栈并让我添加断点。但我什么也没得到——没有反应,没有调试器控制台弹出,好像什么都没发生一样。
此功能需要任何设置才能工作?
我在 Ubuntu 16.04 64 位上运行 Python 3.6.3 和 pyenv。
【问题讨论】:
经过一些谷歌搜索和测试后,我使它适用于以下三件事。
ptrace 权限问题,如http://askubuntu.com/questions/41629/after-upgrade-gdb-wont-attach-to-process 中所述
pyenv 下的 Python 可执行文件是脚本,而不是真正的可执行文件。我切换到 Ubuntu 自己的 Python 3.5。删除了项目目录中的 .idea 子文件夹和主目录中的 .PyCharm2017.3。重新打开项目后,将项目解释器设置为相同的 Python 3.5$ sudo apt install python3-dbg python3-dev。不确定这一步是否必要,但我这样做是为了让 GDB 在搜索替代方案时也能够运行 py-* 命令【讨论】: