Tag: gdb

gdb – 用pipe道debugging

假设我有两个程序叫做blah和ret 。 我想通过I / Oredirect来debugging接收来自ret程序的input的程序。 如何在使用gdb的情况下debuggingblah程序? bash> ret | blah

如何获得OSX上的“signedigned”gdb?

因为我需要一个启用Python的gdb ,所以我安装了另一个版本 brew tap homebrew/dupes brew install gdb 我想在Eclipse CDT中使用这个gdb ,在这里我在debugging设置中input了二进制文件的path。 但是,启动debugging程序失败,并显示以下消息: Error in final launch sequence Failed to execute MI command: -exec-run Error message from debugger back end: Unable to find Mach task port for process-id 39847: (os/kern) failure (0x5).\n (please check gdb is codesigned – see taskgated(8)) Unable to find Mach task port […]

为什么我得到消息“单步直到退出。 。 。 GDB中没有行号信息“?

我使用gcc 4.4.1编译了我的C程序,但是当我尝试通过gdb版本7.0中的一个函数时,我得到以下消息: "Single stepping until exit from function _DictionaryTree_getNodeList, which has no line number information." 有人可以告诉我为什么发生这种情况?

如何在一个具有许多同名文件的项目的一个文件上设置断点?

我想在第45行的文件service.cpp中的gdb中设置一个断点,然后执行: gdb> break service.cpp:45 问题是在我的应用程序中有很多service.cpp文件,它不是select我感兴趣的。我怎样才能指定正确的service.cpp文件?

使用GDB摆脱“退出”提示:只要杀死进程并退出

考虑: (gdb) q A debugging session is active. Inferior 1 [process 9018] will be killed. Quit anyway? (y or n) y 什么是.gdbinit选项使GDB始终在退出请求中.gdbinit正在运行的进程? 我知道GDB可以附加到已经运行的进程上,所以在退出的时候杀掉它们会很糟糕。 但是,从这个过程开始,需要确认你的行为开始恼火,第二次退出。

如何在Mac OSX El Capitan中安装gdb(debugging器)?

如何在Mac OSX El Capitan中安装gdb(debugging器)? 我已经尝试安装GDB,但失败了几次。 我正在关注这个URL: http ://ntraft.com/installing-gdb-on-os-x-mavericks/,MAC不允许安装MacPorts。 任何人都可以在这方面帮助我。

当特定的断点在gdb中命中时执行特定的操作

我正在寻找一种方式来做一些特定的中断点在gdb中的行动。 基本上我有一些memleak在我的程序。 当malloc和free函数命中时,我需要进入函数(step)并且收集一些基本的信息,比如addr和size(基本上是打印那里的值)。 一旦完成恢复我的程序。 我们有什么好办法做到这一点?

如何在gdb中附加一个进程

我有一个简单的C程序,分叉一个进程,然后运行然后运行一个可执行文件。 现在我想将subprocess附加到gdb。 然后我在控制台中运行程序,打开另一个控制台来查找subprocess的PID。 然后我用下面的命令启动gdb: gdb attach 12271 12271我的孩subprocessID。 附件失败,它说: No such file or directory. 任何想法为什么?

有可能使用lldbdebugging一个gcc编译的程序,或使用gdbdebugging一个铿锵编译的程序?

(前言:我对C / C ++来说很新,而且我不太清楚在本地代码中的debugging是如何工作的。) 有些消息来源说,gdb和lldb可以debugging任何编译成机器码的程序 。 其他人说,要用gdb进行debugging,你必须在gcc 中用-g标志进行编译。 gcc的文档本身表明这是可选的,实际上,如果使用它,它可能会导致gdb 以外的其他debugging器出现问题。 铿锵也有一个-g标志,文档基本上只是说“生成debugging信息”。 那么这些debugging器限制在自己的工具链(GNU和LLVM)中,还是在某种程度上独立于所使用的编译器?

为什么GDB铸造不工作?

我使用print (CEthPacket*) 0xeb609a0来检查给定地址处的对象,并A syntax error in expression, near ') 0xeb609a0'.获得A syntax error in expression, near ') 0xeb609a0'. 我究竟做错了什么? 编辑:CEthPacket是一个C + +类,我在GDB Fedora(6.8-37.el5)。