ElfToolChain - 如何使用包的其余部分构建libelf库?

时间:2013-09-28 08:41:14

标签: object executable loader elf

我需要为简单的加载器解析ELF可执行文件的可加载部分。找到了很好的“libelf by Example”教程(由J. Koshy撰写),它给出了ELF结构的一个很好的概述。然后它引导我进入ELF Toolchain项目,该项目实现了libelf ELF处理函数库。

使用这个库的好处在于它封装了ELF格式的变体,使代码更具可移植性和未来证明。但是,我发现为了能够在Ubuntu上构建软件包,我需要安装大量的先决条件。

我尝试通过在libelf目录中运行pmake来构建libelf部分,但是在缺少头文件时出现了构建错误 - 这显然是由全局make进程自动生成的,并且取决于体系结构。< / p>

我的问题是 - 如何构建ELF工具链的libelf部分?

1 个答案:

答案 0 :(得分:0)

您可以通过在顶级SUBDIR中注释掉相应的Makefile行来构建Elftoolchain源树的选定部分。

对于构建libelf,您应该可以使用以下两个目录:

% grep ^SUBDIR Makefile | head -2
SUBDIR += common
SUBDIR += libelf

注意:在Ubuntu上,您还可以使用GNU libelf,它提供相同API的不同实现,并且似乎有ready-made packages