We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 9 years ago.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(6)
我推荐 eclipse Indigo,它内置了对通过 gdbserver 远程调试应用程序的支持。我只是不知道源代码必须位于哪里才能工作。
Sinec 它使用 gdb 的 MI 接口,它应该像与 gdb 交互的任何其他接口一样工作。
I'd recommend eclipse Indigo it has built-in support for remote debugging applications via gdbserver. I just don't know where the source code has to be located for it to work.
Sinec it uses the MI interface of gdb it should work as any other interface that interacts with gdb.
我建议尝试 Qt Creator。它是跨平台的,具有相当好的“代码洞察”功能,并且比 Eclipse 轻得多。它是一个完整的 IDE,而不仅仅是一个调试器前端。它确实需要一个带有 python 支持的 gdb(我认为只是客户端),但它的跨平台安装程序中确实附带了它。它肯定更适合开发 C++/Qt 应用程序,但支持通用 Makefile 和 CMake 项目,我将它用作日常 C IDE 和调试器。
根据您正在调试的远程目标的具体类型,这个问题的答案可能会有很大差异。如果您要对运行 RTOS 的深度嵌入式微控制器目标进行交叉调试,您的选择将更加有限。
对于基于 Makefile 的项目,您需要使用“通用项目”创建向导< /a>,默认将指定目录下的所有源文件添加到您的项目中。如果您希望 Qt Creator “理解”您在 Makefile 中指定的内容,例如命令行包含目录(进入 .includes 文件)、命令行包含头(进入您的 .config 文件)和命令行符号定义(进入您的 .config 文件)。不过,项目文件列表以及编译、部署和运行命令都可以通过 GUI 进行维护。
I recommend trying out Qt Creator. It's cross-platform, has pretty good "code insight" features, and is a hell of a lot lighter-weight than Eclipse. It is a full IDE, not just a debugger front-end. It does require a gdb built with python support (client only, I think), but does come with it in its cross-platform installer. It is definitely more geared to developing C++/Qt applications, but does support generic Makefile and CMake projects, and I use it as my everyday C IDE and debugger.
Depending on exactly what kind of remote target you're debugging, the answer to this question could vary a lot. If you're cross-debugging to a deeply embedded microcontroller target running an RTOS, your options are going to be more limited.
For Makefile-based projects, you want to use the "Generic Project" creation wizard, which by default adds all the source files under the specified directory to your project. It may take some manual work to maintain your project, if you want Qt Creator to "understand" things that you've specified in your Makefile like command-line include directories (go in your .includes file), command-line included headers (go in your .config file), and command-line symbol definitions (go in your .config file). The project file list and compile, deploy, and run commands can all be maintained from the GUI though.
使用 DDD 怎么样?老实说,我没有太多使用它,似乎有一种方法可以使用 DDD http://www.gnu.org/s/ddd/manual/html_mono/ddd.html#Remote%20Program
How about using DDD? I haven't used it much to be honest, and there seems to be a way to do remote debugging using DDD http://www.gnu.org/s/ddd/manual/html_mono/ddd.html#Remote%20Program
Gdb本身已经内置了基于curses的伪gui。默认情况下,它将主屏幕分为 2 个窗口。上方窗口包含源代码,下方窗口是命令行界面。还有其他模式允许向您显示寄存器值和汇编。它在 ssh 上运行良好,因此如果可以的话,将 gdb 复制到您的设备上并通过 ssh 进行调试。如果没有,以上所有内容都可以应用于通过 gdbserver 进行调试。
Gdb itself has already built-in curses based pseudo gui. By default, it splits main screen on 2 windows. Upper window contains source code, lower window is command line interface. Also there are other modes allowing to show you register values and assembly. It works well over ssh, so if you can, copy gdb on your device and debug it over ssh. If not, everything above can be applied for debugging over gdbserver.
您可以使用 NetBeans。 NetBeans 支持使用 gdb 进行远程调试。 Gdbserver 支持插件也存在。我不测试插件,但使用 ssh 进行远程调试效果很好。
You can use NetBeans. NetBeans support remote debugging with gdb. Gdbserver support plug-in also exist. I don't test plug-in but remote debugging using ssh working well.
尝试Affinic 调试器 GUI。它有更新的设计。
DDD 太老了,Affinic Debugger 支持所有主流平台,而且比 DDD 更强大。
Try Affinic Debugger GUI. It has newer design.
DDD is too old, Affinic Debugger supports all major platforms and is more powerful than DDD.