Questions tagged «gdb»

2
如何关闭GDB TUI?
我有这个GDB TUI /布局。如何返回默认的GDB视图? 我不能只重新启动GDB,因为我手上有重要的回溯,只要我有这些额外的窗口,我就无法在基本视图上滚动。
19 gdb 

3
为什么在构建gdb时找不到termcap库?
make 然后失败: 配置:错误:没有找到termcap库,但是那个termcap库就在那里,为什么找不到它? checking for library containing zlibVersion... -lz checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for library containing dlgetmodinfo... no checking for iconv... yes checking for iconv declaration... install-shextern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); …
10 centos  make  build  gdb  autotools 

3
在GDB中,如何直接跳到最顶层的调用堆栈帧?
我有一个C程序,它在深入到无限递归混乱之后会出现错误。在GDB中回溯过程是没用的,因为调用堆栈帧至少有 1000帧深,而重复的函数调用是四个常见的递归函数调用的系列(因此断点似乎无用)。重复调用backtrace只是一遍又一遍地读出四个函数名。在我看来,向上“向上”向上......会让我更高,所以我可以看到这种模式最初开始发生的地方,但似乎从最顶层的呼叫开始会更有效率堆栈框架和降低相反,因为我的预感是无限递归在过程的早期开始。如果调用堆栈总共有N帧,我知道我可以做到 gdb>> up N 到达堆栈的顶部(第N帧),但问题是我不知道N.是否有命令查找调用堆栈中的总帧数?或者,是否有一个灵活的内置GDB命令用于跳转到最顶层的帧?在我看来,最顶层的框架应该是main()函数 - 我可以利用这些知识到达最顶层的框架吗?
9 debug  c  gdb 

5
如何将内存转储到gdb(OSX)中的文件?需要拯救我的工作
我需要知道如何将Safari.app中的内存转储到文件中。 我输入了gdb attach 6741(我的野生动物园PID)。 怎么办? 我尝试在Google上的gdb上搜索帮助,但是即使搜索“如何在gdb中转储内存”,我也找不到任何告诉我该怎么做的内容:( 我尝试了“帮助转储”,它给了我很多命令,但是没有一个起作用。我最接近的是: (gdb) dump memory ~/safaridump.bin 0 Missing stop address. 那么终止地址是什么?我不知道?我怎么知道停靠地址?我尝试在Google上搜索““缺少终止地址” gdb“,但没有帮助。我不知道该如何获得停止地址。 我尝试了这个: (gdb)转储内存〜/ safaridump.bin 0 0xffffffff 那也不起作用。 我懂了: gdb stack crawl at point of internal error: 0 gdb-i386-apple-darwin 0x0012fd8f internal_vproblem + 316 1 gdb-i386-apple-darwin 0x0012ffd3 internal_verror + 43 2 gdb-i386-apple-darwin 0x00130008 align_down + 0 …
9 macos  gdb 

1
关闭打开的文件而不会终止进程
我在CentOS 7上运行java(是的java ...)应用程序。 过了一会儿,有很多“删除”的文件让我烦恼。 对于已删除的文件(不是问题): lsof | grep "(deleted)" 我在/ proc / pid / fd / ...中找到了它们,我的问题是如何在不杀死进程的情况下杀死/删除它们(进程必须全天候运行)。 我在google上看到我可以使用gdb工具,但我不知道如何使用它。 你能帮帮我吗(只是写一步一步的手册)? 如果你有,我会很乐意听到其他一些建议。
5 linux  java  process  gdb  lsof 

1
如何进入gdb上运行的进程?
所以我试图调试一个在两个节点上运行的程序。我使用yod作为任务启动器。 yod -hosts node01,node02 ./dist_task -nl 2 该计划被卡住了。所以我想像这样使用gdb yod -hosts node01,node02 gdb ./dist_task 我在node01中进入gdb会话,但对于node02,我无法进行。会发生什么,我可以看到远程节点上运行的进程(gdb ./dist_task)(htop为node02),但我无法进入它。我尝试连接(我只是试图附加到gdb进程),就像我们通常对一个进程一样,但在我的情况下,因为它已经是gdb我得到有关gdb的信息,但没有关于进程的信息。 ps:我试过通过xterm但也没有运气(我不能弹出两个xterm)

1
使用Qt Creator安装什么?
我正在尝试在Windows上安装Qt Creator,但是它有太多选项(整个安装需要很多GB),我真的不知道需要哪些选项。 我只希望能够使用C ++创建和调试命令行和GUI应用程序。但是,所有这些都可以选择(并且预先选择的唯一一个在“工具”子菜单中): 如果我展开Qt选项之一,则可以: 我确定我必须在某个地方选择MinGW(因为这是我想要的编译器)。但是我不确定是否应该在“ Qt 5.11.1”子菜单中选择一个,还是在“工具”子菜单中选择一个。另外,我不确定要检查什么才能获得GDB调试器(这是我想要的)。而且我看不到任何与Qt C ++相关的内容来创建GUI项目... 这里的任何指导将不胜感激。
-1 windows  mingw  qt  gdb 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.