Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gcc 获取符号在.out文件中的位置_Gcc_Symbols_Elf_Dwarf - Fatal编程技术网

Gcc 获取符号在.out文件中的位置

Gcc 获取符号在.out文件中的位置,gcc,symbols,elf,dwarf,Gcc,Symbols,Elf,Dwarf,很好地解释了如何获取elf文件的符号(变量、函数等) 现在我有了这些符号,我想知道它们在什么位置(模块) 例如,如果我编译一个由文件main.c、someFile.h和someFile.c组成的程序。另外,假设main.c程序包含全局变量int Counter。那么我如何判断变量Counter位于main.c?答案在 将C文件编译为各自的目标文件(不将这些目标文件链接在一起)。如果要检查这些目标文件,您将得到答案。大多数文件依赖于其他文件,因此可能无法单独编译文件。

很好地解释了如何获取elf文件的符号(变量、函数等)

现在我有了这些符号,我想知道它们在什么位置(模块)


例如,如果我编译一个由文件
main.c
someFile.h
someFile.c
组成的程序。另外,假设
main.c
程序包含全局变量int Counter。那么我如何判断变量Counter位于main.c?

答案在

将C文件编译为各自的目标文件(不将这些目标文件链接在一起)。如果要检查这些目标文件,您将得到答案。大多数文件依赖于其他文件,因此可能无法单独编译文件。