我希望将一些用户定义的数据放入一个自定义部分,以便应用程序和离线分析器同时读取。假设以下示例: const int* get_data() { __attribute__((section(".custom"))) static const int data = 123; re...
我正在我的一个项目中使用C++11,想知道如何最好地表示ELF魔数。我不喜欢十六进制字面量,所以我在寻找比以下更好的东西:const uint32 ELF_MAGIC_NUMBER = 0x7F454c46; // 0x7F, E, L, F 所以,我试着写:const uint32 ELF_...
我正在尝试通过访问elf文件的sh_name成员来获取节名称的正确偏移量,但它一直给我零或空值... 我只能使用mmap()和elf.h - 不能使用任何辅助函数。 因此我尝试了:void* map_start = mmap(0, fd_stat.st_size, PROT_READ | ...
我使用LSB SDK构建了一个测试ELF程序(请注意,我的问题并不特定于LSB):$ /opt/lsb/bin/lsbcc tst.c $ ls -l a.out -rwxr-xr-x 1 math math 10791 2009-10-13 20:13 a.out $ file a.out...
我有一个用C++编写的服务器应用程序。启动后,在x86 Linux(Ubuntu 8.04,GCC 4.2.4)上使用约480 KB内存。我认为480 KB是一种过度使用的内存:服务器甚至还没有做任何事情,没有客户端连接到服务器。(参见下面的评论,我在其中解释了为什么认为480 KB是很多的内...
我有一个ELF目标文件,想知道它包含哪种类型的调试信息。它是使用Diab编译器(C源代码)针对PPC架构编译的。我很确定它是使用调试符号构建的。 我尝试使用dwarfdump提取调试信息,但失败了,因此我猜测调试信息不是DWARF类型的。$ dwarfdump file.elf No DWAR...
我在Linux操作系统上编写C和C++代码,并使用GCC。完成代码后,我想生成ELF文件。我只能生成"a.out"文件,而且我不需要它。如何获得ELF文件?ELF文件是什么导致的?或者是否可能使用此程序生成此文件?
问题是在下面这个问题的背景下提出的:为什么库明明在-L路径上,但链接器却找不到库?。看起来我的库和目标文件具有不同的ELF格式,这可能导致链接器无法"找到"库。 现在,这引发了几个问题: 似乎我的编译器通常生成SYSV ELF文件。(使用file检查) 然而,针对特定的C++源文件,它生...