我能够成功编译libdwarf
和libelf
,并带有一些警告。 我也成功编译了simplereader
演示应用程序,但未能处理这个elf文件。 它总是失败:
void* _elf_read(Elf *elf, void *buffer, size_t off, size_t len)
在libelf
库下的libelf
。
我正在使用最新的2012 libdwarf
源代码和libelf
http://directory.fsf.org/wiki/Libelf
任何build议如何解决它? 如果有谁做这个港口,并愿意分享他/她的工作,将不胜感激。
谢谢。
我已经解决了这个问题。 问题不在于Libelf,而是在应用程序simplereader中。 这个应用程序打开文件只读,而libelf期望文件以二进制打开。 通过添加“| _O_BINARY”一切顺利。