CLion 调试:lldb 附加到进程,断点为灰色,表示没有可执行文件

hak*_*ami 6 debugging lldb clion

我正在尝试调试tensorflow项目,该项目使用SWIG技术将c++实现与python前端包装在一起。我想调试C++部分。这是我所做的:

  1. 在终端($pid)中启动tensorflow python脚本
  2. 直接使用lldb -p $pid效果很好,我可以设置断点等。
  3. 但我想使用 CLion 调试 GUI,所以我单击Clion->Run->Attach to Process,找到 $pid 作为本机进程。
  4. CLion 成功附加到 $pid,但是,我在 Clion 中设置的每个断点都是灰色的,不会被命中。但如果我在嵌入式 lldb 控制台中设置断点,它就会起作用(断点命中并在 Clion 代码文件中突出显示)。

CLion 断点上的错误消息是:

当前不会命中断点。没有可执行代码与该行关联。

P1: 在此输入图像描述 P2: 在此输入图像描述

如何解决这个问题,以便我可以在 Clion 而不是 lldb 命令中设置断点?

额外的信息:

  • tensroflow使用bazel来构建。我不使用 Clion 来构建。只是编辑/浏览/调试。CLion 有一个 bazel 插件,但绑定到特定的 bazel 版本,对我来说不行。
  • CLion 版本 2.19.2