- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试从 elf 文件中提取函数名称及其参数等信息,目的是通过更改函数的参数值来执行稳健性测试,我正在 windows 环境中工作,我想要检测的 elf 文件是powerPC 架构,我尝试使用开源工具 DynInst http://www.dyninst.org/它可以在 MS Visual Studio 上构建,但它检测用 cl 编译器编译的二进制文件(exe 和 dll 格式),我有以下问题要提出:
1) 是否可以使用 Microsoft Visual Studio c++ 编译器生成 elf 文件,以便我可以使用 DynInst 检测二进制文件?
2) 有没有其他的方法或工具可以在windows平台上提取和检测elf文件?
objdump、readelf、nm 等提供了提取 elf 的功能,但我还需要检测它们。我不知道如何调整这些实用程序以满足我的需要,任何建议都会有很大帮助!
/谢谢
最佳答案
1) Is it possible to use Microsoft Visual studio c++ compiler to produce elf file
当然:ELF
只是一种文件格式。就像您可以在 PowerPC/AIX 上编写 .zip 文件并在 SPARC/Solaris 和 x86/Windows 上读取它一样,您可以在任何操作系统上编写 ELF 文件。
so that I can use DynInst to instrument the binary?
我不知道 DynInst
是否能够检测这样的文件。
Is there any other means or tools that can be used to extract and instrument elf files on windows platform?
您可以编译GNU binutils
包,其中包含readelf
。您可以使用它从 ELF
文件中提取各种信息。
还有libelf
库,它允许您读取和 编写ELF 文件。 libelf
是否可以在 Windows 上轻松构建,我不知道。
关于windows - 在 Windows 平台上为 powerPC 提取和检测 elf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15510932/
我们正在为大学编写一个模拟器项目,我们必须使用 ELF 文件作为输入,但我们不太确定 ELF 文件是什么样的。它应该包含我们可以执行的某些操作(所有这些都应该用二进制表示),但它是否包含其他内容?还是
我目前正在研究 ELF 格式。我想确认一下我认为正确的事情。 ELF是一种格式,它代表可执行和可链接格式。在linux中,一切都是ELF格式。 当使用gcc编译带有-c和-fPIC文件的代码时,它会将
基本上,我希望能够在 elf 二进制文件的 debug dwarf 部分中更改源文件的路径。 最佳答案 Basically I want to be able to change the path t
我想编写一个实用程序来从 ELF 二进制文件中删除程序头。例如,当我运行 readelf -l/my/elf 时,我会得到所有程序头的列表:PHDR INTERP ... GNU_STACK GNU_
考虑使用 GCC 编译的 C 标准 hello world 程序,没有任何开关。如 readelf -s说,它包含 64 个符号。它还说.symtab部分是 1024 字节长。然而,每个符号表条目有
我正在尝试为 ARM 平台编写 elf 可执行加载程序。我在这里有一些查询 1) 如何生成可重定位或位置无关的 ELF 可执行文件(编译器和链接器选项是什么) 2) 如何加载上面生成的 ELF 可执行
假设我有一个 lib xxx.so。所以我得到了所有的函数名和参数 以下命令: readelf -Ws xxx.so |c++filt 它将输出以下内容: 711: 00270209 40
我正在创建一个 ELF 可执行文件,我需要知道操作系统需要哪些部分才能加载和执行它。 Details: OS: Ubuntu 10.04 (64-bit)Kernel ve
SHT_NULL的目的是什么? ELF 中的部分? 它是由操作系统还是加载程序引用的? 这个部分的大小是多少? 它与 NULL 指针有什么关系吗? 此外,为什么此部分在部分段映射中没有条目? 来自 E
我正在学习 ELF 并且有一段时间的疑问。我试图寻找答案,但徒劳无功。如果有人能给我答案或引导我到地方寻找答案,我会很感激。 我读到的几乎所有关于 ELF 的文档都说 .text 部分包含可执行的二进
问题场景 : 简单来说,我们是否有一个 Trace32 命令来从加载到目标的 ELF 文件中读取符号(及其内容)?我们有这种特殊情况,其中 ELF 文件的应用程序特定调试符号作为 ELF 中“.nol
我试图从 Linux 程序的 elf 文件中提取特定的字符串变量(即符号),甚至从它来自的 .o 中提取。 它在 .rodata 部分,显然我知道符号名称。 是否有一系列 objdump 样式的命令和
在 Linux 上,我试图将静态链接的 ELF 文件剥离为基本要素。当我运行时: strip --strip-unneeded foo 或者 strip --strip-all foo 生成的文件仍然
我有一个 STM32,我将 ELF 文件加载到 RAM 中(使用 OpenOCD 和 JTAG)。到目前为止,我还没有真正关注我加载的 ELF 文件的大小。 通常,当我编译一个对我的板来说太大的 EL
我有一个 STM32,我将 ELF 文件加载到 RAM 中(使用 OpenOCD 和 JTAG)。到目前为止,我还没有真正关注我加载的 ELF 文件的大小。 通常,当我编译一个对我的板来说太大的 EL
我需要学习手动创建 ELF 可执行文件。到目前为止,我一直在使用在线指南,例如: Manually Creating an ELF Executable ELF reference 几次失败后,我将我
我在 readelf 实用程序的帮助下打开了我的对象 Sprite 文件: readelf -a ./my_object.o |较少的 结果我得到了很多有趣的信息。 我在部分表中看到了一个带有“GRO
ELF 文件包含两个结构来处理重定位: Elf64_Rel: typedef struct { Elf64_Addr r_offset; Uint64_t r_info; }
我一直在阅读 ELF 规范,但无法弄清楚程序入口点和 _start 地址从何而来。 看起来他们应该在一个非常一致的地方,但我做了一些琐碎的程序,_start 总是在不同的地方。 谁能澄清一下? 最佳答
这是我的测试。我有一个由源 main.c 和 misc.c 组成的 main 应用程序和一个由 lib.cname); m++; } return 0; } misc.
我是一名优秀的程序员,十分优秀!