7得票3回答
在 gdb 中我的变量显示为 <optimised out>,我该如何找到它的值?

在gdb中,如何发现一个显示为“optimized out”的变量的值? 假设该值被存储在寄存器中,我该如何找到它所在的寄存器? 考虑以下简单程序(从以下网站复制)。 #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int main(v...

7得票2回答
在Mac OSX中读取DWARF文件

有人能帮我编写一个程序,可以读取DWARF文件并给出文件名、行号和函数名的详细信息吗?

7得票2回答
如何获取C函数指针的函数名

我有以下问题:使用backtrace(3)函数获得C语言的回溯信息后,可以轻松地使用dwarf库和dladdr(3)找到函数名。但是如果我只有一个简单的函数指针(例如通过传递“&function”来获得),则无法使用dladdr + dwarf函数。似乎这个指针与backtrace(3)返回的...

11得票1回答
ld警告:在OS X上,stack subl指令与dwarf堆栈大小差异太大

最近我们在 OS X 编译时开始收到这个警告。ld: warning: could not create compact unwind for __Z10createMenuv: stack subl instruction is too different from dwarf stack ...

7得票1回答
我该如何使用gdb来调试使用yasm汇编的代码?

我已经使用yasm进行了代码组装,并将其链接到我的C ++程序中,但我无法在gdb上设置汇编语言文件中的符号断点。 命令行可能不是非常清晰,但是我们可以尝试一下: "g++" -ftemplate-depth-128 -O0 -fno-inline -Wall -g -fPIC -std...

18得票2回答
检查编译单元的DWARF版本

大家好,是否有一种工具可以检查文件的DWARF版本?类似于这样:$ dwarf_tool binary_name 4

14得票2回答
ARM中DWARF信息中的本地变量位置

我有一个C程序,保存在delay.c文件中: void delay(int num) { volatile int i; for(i=0; i&lt;num; i++); } 然后我在 ARM 模拟器(更具体地说是 armel)上使用 gcc 4.6.3 编译该程序,并使用以...

13得票3回答
Gcc 4.8 DWARF4与DWARF2的区别

GCC 4.8支持DWARF4。从用户角度看,DWARF4和DWARF2有什么区别呢? 让我们从GDB的角度来看看。当您切换到DWARF4时,对于用户是否有任何区别? 我找到了一个Dwarf主页,但据我所见,没有网站提供从用户角度的差异信息。 你能告诉我这些差异吗?

7得票1回答
将调试符号从DWARF转换为PDB

有没有一种方法可以将binutils的DWARF格式调试信息(例如由GCC在Cygwin上发出的)转换为Microsoft PDB(由Visual Studio使用)?

12得票6回答
分析MIPS二进制文件:是否有用于解析二进制数据的Python库?

我正在开发一个工具,需要将十六进制地址解析为二进制文件中的符号函数名称和源代码行号。该工具将在x86架构的Linux上运行,但要分析的二进制文件是基于MIPS的嵌入式系统。这些MIPS二进制文件采用ELF格式,并使用DWARF作为符号调试信息。 目前我计划派生objdump,传入十六进制地址...