17得票4回答
内联静态数据引起了一个段类型冲突。

我希望将一些用户定义的数据放入一个自定义部分,以便应用程序和离线分析器同时读取。假设以下示例: const int* get_data() { __attribute__((section(".custom"))) static const int data = 123; re...

17得票5回答
我可以根据字节指定一个整数常量吗?

我正在我的一个项目中使用C++11,想知道如何最好地表示ELF魔数。我不喜欢十六进制字面量,所以我在寻找比以下更好的东西:const uint32 ELF_MAGIC_NUMBER = 0x7F454c46; // 0x7F, E, L, F 所以,我试着写:const uint32 ELF_...

17得票1回答
从 ELF 文件的节头中获取 sh_name 成员

我正在尝试通过访问elf文件的sh_name成员来获取节名称的正确偏移量,但它一直给我零或空值... 我只能使用mmap()和elf.h - 不能使用任何辅助函数。 因此我尝试了:void* map_start = mmap(0, fd_stat.st_size, PROT_READ | ...

16得票5回答
将共享库打包到ELF文件中

有没有一个工具可以把精灵需要的所有SO文件转换成静态文件,然后将精灵转换为不需要SO文件?

16得票1回答
如何找出未满足的ELF依赖项?

我使用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...

16得票3回答
如何减少C++默认的内存消耗?

我有一个用C++编写的服务器应用程序。启动后,在x86 Linux(Ubuntu 8.04,GCC 4.2.4)上使用约480 KB内存。我认为480 KB是一种过度使用的内存:服务器甚至还没有做任何事情,没有客户端连接到服务器。(参见下面的评论,我在其中解释了为什么认为480 KB是很多的内...

16得票3回答
我该如何知道ELF目标文件中包含哪种类型的调试信息?

我有一个ELF目标文件,想知道它包含哪种类型的调试信息。它是使用Diab编译器(C源代码)针对PPC架构编译的。我很确定它是使用调试符号构建的。 我尝试使用dwarfdump提取调试信息,但失败了,因此我猜测调试信息不是DWARF类型的。$ dwarfdump file.elf No DWAR...

16得票1回答
我该如何使用GCC生成ELF文件?

我在Linux操作系统上编写C和C++代码,并使用GCC。完成代码后,我想生成ELF文件。我只能生成"a.out"文件,而且我不需要它。如何获得ELF文件?ELF文件是什么导致的?或者是否可能使用此程序生成此文件?

15得票1回答
SYSV与Linux/GNU ELF格式比较

问题是在下面这个问题的背景下提出的:为什么库明明在-L路径上,但链接器却找不到库?。看起来我的库和目标文件具有不同的ELF格式,这可能导致链接器无法"找到"库。 现在,这引发了几个问题: 似乎我的编译器通常生成SYSV ELF文件。(使用file检查) 然而,针对特定的C++源文件,它生...

15得票1回答
读取ELF节的内容(以编程方式)

我正在尝试检索ELF二进制文件中的一个附加部分的内容。目前,我正在使用以下代码来获取每个部分的名称: #include <stdio.h> #include <unistd.h> #include <stdint.h> #include <stdli...