ELF代表可执行文件和可链接格式,是包含机器代码的文件的文件格式。
ELF phdr:将来自多个可执行文件范围的内存页拼凑在一起
我正在修补(静态链接)ELF 可执行文件。 我想从二进制文件的多个不同部分在虚拟地址空间中创建页面。 这是一个简单案例的可视化...
GNU 链接器在创建最终 .rodata 部分时的不确定行为
将来自多个目标文件的 rodata 部分链接到最终的 elf 中。 rodata 部分的输出在内容和大小上略有不同,多次构建相同的代码。 有人可以
使用命令行实用程序通过变量名从 .elf 二进制文件中检索 const 字符串值?
考虑以下 main.c: #包括 const char greeting[] = "hello world"; 诠释主要(){ printf("%s! ", 问候语); 返回 0; } 我在...中编译了这个
我正在尝试制作一个使用如下代码的裸机程序(它也可以称为玩具操作系统): 你好1.c 整数 = 4; 你好2.c 无效函数(){ 外部内部; //一些操作
我正在尝试交叉编译,主机是 windows 目标是 stm32(arm)。我正在尝试从 arm-none-eabi-ld 生成一个映射文件。 我的问题是双重的 我无法生成地图文件。这是我的
我有一个类似于 UPX 的程序。它通过全局变量执行包含在可执行文件中的嵌入式程序: const char programData[] = { 0x12,0x13 ... } 有什么办法可以...
elf 文件包含多个部分(.eh_frame、.eh_frame_shr)以存储有关如何完成堆栈展开的精确信息。这也是抛出异常的基础(.gcc_except...
错误:使用“ld”链接可重定位的 NASM ELF 时未定义对“scanf”的引用
我有一个使用以下命令编译的 NASM 程序集文件: nasm -felf64 -g -Fdwarf groundFloor.asm -o file.o 其中 groundFloor.asm 是我的 NASM 文件。使用 ld file.o -o file 给我一个 undef ...
为什么我可以在我的 x86_64 机器上执行 RISC-V 二进制文件?
我使用 RISC-V 工具链从源代码编译了一个二进制文件 objdump_riscv。在这里,我阅读了它,显然,它是一个 RISC-V 二进制文件。 $ readelf -h ./objdump_riscv 精灵头: 魔法:7f 45 4c 46 02...
我需要解析全局变量的数据类型,我找了很多文档但没有进展。需要帮忙!!! 使用 objdump -s 和 pyelftools(https://github.com/eliben/pyelftools),但在
我有一个易受攻击的函数,它使用“read()”函数将用户数据复制到缓冲区中。用户可以提供要读取的字节数。我能够覆盖返回地址。 ...
我尝试从源代码中找到特定行号的地址内存。 我使用了:objdump --dwarf=decodedline 但我得到了输出: checkAddress:文件格式elf64-x86-64
How to resolve code line from Mbed crash dump on Windows 10?
Mbed 代码在下面抛出故障转储,我希望找到与给定 PC 对应的行。不过我在 Windows 上,所以简单的“addr2line”不可用。我试过 addr2line
静态链接的 Linux lib 可以转换为 COFF 并由 MinGW 链接,以便在 Linux 系统上运行吗?
我有一个 Windows 应用程序的源代码。它在 MinGW 下编译,与 wine 良好链接,并在 Linux 系统上执行。 但是,我希望它调用 Linux 库。 小...
我想为资源非常有限的嵌入式设备(ESP8266)创建一个操作系统,它可以以程序或共享对象的形式加载ELF文件(共享对象是第二重要的)。我想...
我有一个ELF文件,链接到一个库的X版本的共享对象文件。我只能访问库中Y版本的共享对象文件的版本。当我尝试运行ELF......。
假设有一个简单的二进制文件,它依赖于三个库,libA.so、libB.so和libC.so。在通常情况下,这三个依赖会根据需要显示在readelf中。然而,我...
给出以下main.c: #include void test() { printf("test()\n"); } int main() { test(); return 0; }。执行以下命令: clang-10 main.c -o main readelf -s main ...
Linux 可执行文件在运行 strace 时出现 "usrbinstrace: exec: No such file or directory "错误,无法运行。
我需要使用strace分析linux二进制可执行文件,以捕获系统调用。在运行命令:usrbinstrace .005f32fffe1da3bc100e7dcd8b2f8f2c时,我得到这个错误:execve("......"。