Visual Studio 2015 / Linux扩展1.0.7:忽略断点

时间:2017-07-03 10:14:19

标签: c++ linux visual-studio-2015 gdbserver

我正在使用Visual Studio 2015编写一个小型Linux应用程序。为此,我使用的是Visual Studio 2015 Linux Extension,v 1.0.7(最新版本,因为我正在写这篇文章)。

我可以使用gdbserver在远程环境中编译和运行应用程序,但我无法使用断点。我不明白为什么。

详情

目标环境是一个远程Ubuntu 64,今天已升级g++gdbgdbserver

在这种意义上,扩展可以正常地将C ++代码发送到远程环境,并在按下F7时正确编译:

  • 我的代码(我在这篇文章中使用了一些玩具代码)

enter image description here

  • 生成的构建日志

enter image description here

当我运行代码时,使用gdbserver远程正确执行代码:gdbserver正确地发送回输出,因为我可以在VS的Linux控制台窗口中查看它。

enter image description here

我的问题:当我在代码中设置断点时(如上面代码的第7行),它被忽略了。当我按F11直接启动调试时,程序运行就好像我没有调试一样。 我想知道这是否与上面的debugging from host 127.0.0.1消息有关。

当然,我在尝试时处于调试模式:

enter image description here

  • 禁用优化:

enter image description here

  • 符号在那里:

enter image description here

  • 默认情况下调试设置。安装扩展后我保持不变。没有端口设置,可能是原因吗?

enter image description here

  • 最后,如果我在上面的调试配置中将gdbserver替换为gdb,并且使用F10(或任何其他步进选项),我可以进行一步一步的调试),而不是F5,开始调试。缺点是我丢失了Linux控制台,但仍然无法设置断点,它们会被忽略。我必须在整个执行路径中步骤:

enter image description here

这是我第一次使用远程环境尝试此Linux扩展。我以前和当地的Cygwin一起使用它并且没有断点问题。但这是Visual Studio 2015 Linux Extension的先前版本(1.05),所以这并不能证明什么。

有什么想法吗?

0 个答案:

没有答案