【发布时间】:2017-03-20 21:45:02
【问题描述】:
每当我尝试使用Eclipse + GDB 调试TensorFlow's C++ 代码时,我都会遇到GDB 崩溃,或者实际上以error code = -1 退出。
只要我不在TensorFlow's C++ 代码中设置断点,程序就可以正常运行。但是当我这样做时,当调试器到达断点时,它会在几秒钟后以error code -1 崩溃。 GDB 跟踪中没有任何意义可以解释这种行为。
我使用的GDB版本是7.7.1,在Ubuntu 14.04下运行Eclipse Neon。
TensorFlow 在调试模式下编译。我不认为 Eclipse 缺少它的调试符号,因为它没有抱怨缺少这些符号(而且,偶尔,调试器能够在代码崩溃之前逐步完成代码中的几个步骤)。
一种简单的重现方法是尝试调试 label_image 示例: https://www.tensorflow.org/versions/r0.11/tutorials/image_recognition/index.html
编译它,然后在 Eclipse 中创建一个“C/C++ 应用程序”调试配置,将其定向到 label_image 应用程序的已编译二进制文件。
【问题讨论】:
-
从命令行运行 gdb 会发生什么?
-
刚试过。看起来稳定了很多。也许这个问题与 Eclipse 有关?我试过两个版本,包括最新的 Neon 版本。
标签: c++ eclipse debugging gdb tensorflow