好的,所以有很多问题,要求“Linux 上的 Visual Studio 等效”或这个问题的变体。(这里,这里,这里,……)
我想关注一个方面,并询问调试工作流程在不同系统上可能有何不同,特别是 Visual Studio(类似)系统使用的全集成 IDE 方法以及可能更“分离”的面向工具链的方法。
为此,让我介绍一下我认为的“Visual Studio 调试工作流程”的简短描述:
- 给定一个现有项目
- 我打开了项目(从用户的角度来看是一个步骤)
- 我导航到要调试的代码(可能通过搜索我的项目文件,只需打开Find in Files对话框即可。)
- 我在 (a) 行放了一个断点,只需将光标放在该行并点击
F9
- 我在 (b) 行添加了一个“跟踪点”,在该处添加一个断点,然后更改断点属性,这样调试器就不会停止,而是跟踪局部变量的值。
- 我点击
F5
,它会自动编译我的可执行文件,在调试器下启动它,然后我等到 prg 在 (a) 处停止,同时监视 (b) 的输出的跟踪窗口 - 当调试器最终在 (a) 处停止时,我的屏幕会自动在(一次性预配置窗口)中并排显示以下信息:
- 当前调用堆栈
- 最近更改的局部变量的值
- 加载的模块(DLL)
- 所有活动断点及其位置的列表
- 我输入的最后一个监视表达式的监视窗口
- 用于检查原始内存内容的内存窗口
- 显示当前寄存器值的小窗口
加上/减去一些特性,这也是我在 Linux 下的 Eclipse/CDT 下所期望的。在使用 VIM、Emacs、gdb/DDD 等进行开发时,如何检索此工作流程和呈现的信息?
这个问题并不是关于某个工具是否有一个特性,而是关于看到开发/调试工作正在使用特性的组合,并且在您的指尖有大量可用的选项,以及在不使用时如何访问这些信息完全集成的IDE。