C 如何逐行运行Linux程序
我想用一些调试器逐行运行GTK+/C程序。我从来没有调试过Linux程序,所以我在哪里可以找到关于如何调试代码的指导?我的想法是,我必须从网上下载源代码,用调试符号编译项目,并通过DDD或GDB运行源代码。那么,有没有人能给我们建议如何开始学习这些课程,以及什么是一个好的调试器呢?我至少有时间学习一些东西。研究使用GDB和使用gcc-g编译,或者使用其他调试器C 如何逐行运行Linux程序,c,linux,debugging,gdb,C,Linux,Debugging,Gdb,我想用一些调试器逐行运行GTK+/C程序。我从来没有调试过Linux程序,所以我在哪里可以找到关于如何调试代码的指导?我的想法是,我必须从网上下载源代码,用调试符号编译项目,并通过DDD或GDB运行源代码。那么,有没有人能给我们建议如何开始学习这些课程,以及什么是一个好的调试器呢?我至少有时间学习一些东西。研究使用GDB和使用gcc-g编译,或者使用其他调试器 除了DDD,还可以看看nemiver,他们擅长不同的东西,但nemiver进展得很好 另外,如果你在Ubuntu上,并且你想逐步浏览一个
除了DDD,还可以看看nemiver,他们擅长不同的东西,但nemiver进展得很好 另外,如果你在Ubuntu上,并且你想逐步浏览一个从软件包存储库安装的应用程序,让我们称之为某个_软件包,然后执行以下操作:
完整的在线gdb用户手册。为什么你说我没有接受任何答案?我在这里得到了很好的建议,我真的很感激这里的人有时间帮助我解决问题。我还能做什么?添加一条评论“非常感谢”?不,投票按钮下方的勾号表示您已接受正确答案。Jaska,您需要单击每个问题最佳答案旁边的大复选标记。Joe,我如何判断答案是否正确?如果我请求帮助,帮助我的程序员比我更了解这个主题。通常他或她能更好地说出答案是否正确。谢谢大卫。我还没有在其他地方看到“投票选出最佳答案”的属性,所以我很抱歉。我尽量记得尽可能经常地接受答案。@Jaska:文章链接到作为建议教程。维基百科不应被视为可靠的信息。我用它作为寻找可靠信息来源的一种简单方法。@Mike:我想你是这么认为的,因为任何人都可以编辑它。但是,考虑任何人都可以在堆栈溢出上添加一个答案,如果它们有足够的信誉,它们可以编辑现有的溢出。如果是这样的话,在可靠性方面,它们应该是相等的。我个人认为两者在实践中都相当可靠。谢谢!我试着用Nemiver调试gedit,效果很好。但它调用了一些GTK+的库,所以我如何使用Nemiver来查看GTK库中会发生什么?我可以将valgrind和Nemiver结合起来,这样我就可以看到行之间是否存在内存泄漏,比如1到350行。顺便说一下,Ubuntu存储库不包含开发人员使用的最新代码。是否有一些方法来编译他们正在处理的最新代码?不同的上游项目使用不同的VCS和构建系统,因此没有通用的方法来构建它们。您只需要学习特定项目使用的任何工具,这对于像Mozilla或Xorg这样的大型项目来说可能是一个很大的障碍。