elf

elf

文章 0 浏览 4

针对符号链接而不是 soname 进行链接

我有一个 Linux 应用程序,它在链接器行上链接到: libpython2.6.so 这最终解析为 libpython.2.6.so.1.0 /usr/lib/libpython2.6.so -> libpython2.6.s…

寂寞笑我太脆弱 2024-10-09 20:56:25 7 0

如何设置共享库的动态链接器路径?

我想编译一个带有 .interp 段的共享库。 #include int foo(int argc, char** argv) { printf("Hello, world!\n"); return 0; } 我正在使用以下命令。 …

唯憾梦倾城 2024-10-08 10:20:45 11 0

gcc 忽略 -Wl,--dynamic-linker 开关

我正在尝试使 --dynamic-linker 选项与 CodeSourcery 的 ARM 交叉工具链一起使用。然而 gcc 似乎忽略了它,并且从未在共享库的 ELF 中添加解释器段。…

猫瑾少女 2024-10-08 06:18:11 10 0

GAS ELF 什么时候需要指令 .type、.thumb、.size 和 .section?

我正在为基于 ARM Cortex-M3 的微控制器(Thumb 2 指令集)开发一个汇编程序,使用 GNU as。 在一些示例代码中,我发现诸如 .size、.section 和 .type…

未央 2024-10-07 03:03:04 10 0

在ELF文件中,_start的地址是如何确定的?

我一直在阅读ELF规范,但无法弄清楚程序入口点和_start地址来自哪里。 看起来它们应该位于一个非常一致的位置,但我制作了一些简单的程序,并且 _star…

拥抱影子 2024-10-04 11:11:03 7 0

创建新的 ELF 可执行文件

是否可以使用汇编创建新的 ELF 可执行文件?我想制作一个“空”可执行文件,然后填充其代码部分。…

掐死时间 2024-10-04 07:17:52 8 0

非.bss未初始化数据部分

我正在使用自定义链接器脚本将内核映像分为两部分。第一个是普通代码和数据,第二个是初始化代码和不再需要时将被丢弃的数据。初始化部分也不像内核本…

凉风有信 2024-10-04 01:32:37 8 0

如何减少默认C++内存消耗?

我有一个用 C++ 编写的服务器应用程序。启动后,它在 x86 Linux(Ubuntu 8.04、GCC 4.2.4)上使用约 480 KB 内存。我认为 480 KB 的内存过多:服务器…

谎言月老 2024-10-02 08:16:23 5 0

如何彻底剥离可执行文件

我想尽可能多地剥离 - 在 Linux 上:一个 ELF。我只想要运行它所需的东西。 我尝试使用 strip: strip --strip-all elf 但它似乎效果不佳:nm 仍然显…

眼中杀气 2024-10-01 21:56:10 11 0

“COM”是什么意思?意味着在 .symtab 部分的 Ndx 列中?

add2.c: int counter=0; int a=0; int b; int c; int add(int a, int b) { return a+b; } 编译: gcc -c add2.c -o add2.o 读取符号表: readelf --s…

┼── 2024-10-01 09:34:20 6 0

ELF 文件 TLS 和 LOAD 程序部分

int i; int main() { return i; } -static 编译后 readelf -l 显示来自 elf 的程序头: Elf file type is EXEC (Executable file) Entry point 0xxxxx…

甜扑 2024-10-01 08:42:57 10 0

运行arm-elf-gcc编译代码时出现seg错误

使用 MacPorts,我刚刚在 MacBook Pro 上安装了 arm-elf-gcc。这工作完美无缺,一切似乎都运行良好。 然而,在用 C 和 C++ 编译一个简单的 hello worl…

一人独醉 2024-10-01 00:13:10 5 0

链接器如何在没有 SONAME 的情况下找到共享库

如果我创建一个没有像这样的 SONAME 的共享库 gcc -shared libfoo.o -o libfoo.so 并链接到它, 链接器如何找到我的共享库? 文件名 libfoo.so 是否被…

终陌 2024-09-30 03:39:36 6 0

64 位平台上的 ELF 目标文件大小限制是多少?

假设x86 64和linux平台。 如果你查看 ELF 头,偏移量都是 64 位。 因此,通过重定位 R_X86_64_64 可以轻松创建大于 4G 的目标文件。这意味着静态 .o …

哆兒滾 2024-09-28 08:04:22 13 0

声明为“const”的全局初始化变量转到文本段,而那些声明为“静态”的则转到文本段。转到数据段。为什么?

#include const int str[1000] = {0}; int main(void) { printf("arr is %d\n", str[0]); return 0; } 具有以下输出: [-exercises/adam/stack2]:size…

黯然 2024-09-27 16:06:08 8 0
更多

推荐作者

娇女薄笑

文章 0 评论 0

biaggi

文章 0 评论 0

xiaolangfanhua

文章 0 评论 0

rivulet

文章 0 评论 0

我三岁

文章 0 评论 0

薆情海

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文