一点背景知识:有一段时间我一直在为我的 C++ 项目使用名为 CodeBlocks 的免费 IDE。最近我获得了 Microsoft Visual Studio 2013 的许可证,我不得不说这是一次完全不同的体验。自动完成功能可以在您键入时进行更好、灵敏且准确的错误检查,这是 MFC 应用程序的可视化资源管理器。虽然这些东西你几乎可以在任何具有正确插件的文本编辑器中获得,但我发现 MS Visual Studio 特别吸引人的是它非常漂亮且具有视觉吸引力的调试器(比 CodeBlocks 中的调试器更易于使用并提供更多信息) .
我一直在考虑切换到基于 Linux 的系统,因为至少对我来说,它似乎为通用编程提供了更好的工具。然而,我就是无法让自己失去 MS VS 调试器并返回到 CodeBlocks 中的调试器之类的东西。我一直在寻找各种 Linux 调试器,但我找不到与 MSVS2013 中的类似的调试器。有人能帮我解决这个问题吗?我可以使用什么好的调试器?
我正在寻找的功能:
好吧,你并不缺乏选择。
经典的 Linux 调试器 - gdb - 有一个基于 ncurses 的命令行 GUI,可以通过使用 -tui 参数启动来激活。诚然,与 IDE 集成相比,它有点基础,但它非常强大。
名为 ddd 的独立 gdb GUI 在某些圈子中很流行。该界面不是特别现代,但它支持全部 gdb 功能。
如果您正在寻找集成开发环境,那么 Jetbrains CLion 是一个相对较新的产品,但具有合理的 gdb 集成功能。如果您正在寻找免费的替代方案,那么 Eclipse CDT 集成得相当好。
我个人最喜欢的选择是一个名为 VisualGDB 的商业插件,它将 VisualStudio 与 GDB 集成在一起,允许您在不离开 VisualStudio 的情况下进行编译和调试。它非常灵活,并且得到积极支持和开发。
我使用并喜欢
DDD
调试器(标准gdb
之上的GUI),它感觉非常原生且易于学习,来自多年的MS VisualStudio环境。
您可以执行所有这些“标准”调试任务,例如使用鼠标深入了解数据结构、设置断点、检查变量等。
它叫做
Data Display Debugger
,你可以在 GNU 网站上找到更多信息,其中还包括屏幕截图,以便你可以快速判断这个工具是否适合你:
http://www.gnu.org/software/ddd/
2017年编辑:
新的 MS Visual Studio 2017(所有版本,包括免费版本)现在具有内置 Linux 支持,其中包括使用 MS VC 的内置调试器远程调试 Linux 程序。这甚至包括编辑并继续支持(!)
这是一个视频演示了(显然该视频现在是私有的)
2024年编辑:
这是演示远程调试完整速成课程