Relink 0.15.1:一个 no_std 的 ELF 加载器/链接器

Relink 0.15.1 发布了!也希望借助这个版本,吸引更多对底层系统开发感兴趣的朋友一起参与进来。

Relink 是一个 Rust 写的 no_std ELF loader / runtime linker / JIT linker。它不只是 dlopen 的替代品,而是希望把 ELF 加载、依赖解析、符号查找、重定位、scan-first 布局规划这些能力拆成可组合的模块。

(3 封私信 / 1 条消息) Relink:Rust ELF 加载器与 Runtime/JIT 链接器 - 知乎https://zhuanlan.zhihu.com/p/251523947380.15.1 主要变化:

  • 新增 Linker::load() 运行时依赖加载流程

  • 新增 SearchPathResolver,支持 DT_RUNPATH / DT_RPATH 和 $ORIGIN

  • 新增 scan-first 链接规划,可以在映射前做 section 布局和 materialization

  • 支持 synthetic module,用于宿主符号、bridge symbol、测试和自定义链接场景

  • 改进 relocation error、文档、示例和测试覆盖

  • 发布了 mini-loader 和 windows-elf-loader companion crates

后续还有很多适合入门的工作,比如 ELF dynamic flags、更多架构支持、文档示例、测试 fixture 等。

Good first issue:

https://github.com/weizhiao/Relink/issues/61github.com/weizhiao/Relink/issues/61https://github.com/weizhiao/Relink/issues/61github.com/weizhiao/Relink/issues/61

GitHub:

https://github.com/weizhiao/Relinkgithub.com/weizhiao/Relinkhttps://github.com/weizhiao/Relinkgithub.com/weizhiao/RelinkCrates.io:

elf_loader - crates.io: Rust Package Registryhttps://crates.io/crates/elf_loader

欢迎感兴趣的朋友一起贡献!

相关推荐
bush44 分钟前
正点原子imx6ull-uboot,奇怪的问题
linux·学习
dddwjzx18 分钟前
嵌入式Linux C应用编程——Framebuffer应用编程
linux·嵌入式
今天也想躺ping2 小时前
linux系统移植pjsua库实现sip通话功能
linux·sip·交叉编译
hkj88083 小时前
Linux 总线-设备-驱动(Bus-Device-Driver)完整协作原理
linux·运维·microsoft
早点睡啊Y3 小时前
深入学 LangChain 官方文档(一):总览、安装与快速开始
linux·服务器·langchain
一直在努力学习的菜鸟3 小时前
Rocky8.5编译安装PHP8.4
linux·运维
国产化创客4 小时前
Kindle完整越狱改造:从闲置泡面盖到Linux开发与智能家居终端
linux·运维·物联网·嵌入式·智能家居·智能硬件
qetfw4 小时前
CentOS 7 搭建 MariaDB 数据库服务
linux·数据库·centos·mariadb
皮卡狮5 小时前
进程的地址空间
linux
Darkwanderor5 小时前
动、静态库相关内容的详细介绍
linux·c语言·开发语言·c++