Debian 移植 RISC-V 64 进展迅速,目前已经完成了近 90% 的软件包移植。
上图展示的是目前 Debian 软件包移植到各个架构平台上的情况,其中 RISC-V 64(灰线)已经完成了近 90%,而这距离刚开始向该平台迁移才经过短短几个月。Debian 开发者在博客中指出,因为与架构无关的软件包大约占 Debian 的一半,而且只要所依赖的编程语言解释器之类的软件存在,那么所有移植版本其实都可以使用与架构无关的软件包。这意味着一开始就有大约 90% 的软件包可用于 RISC-V 64 架构。
但是剩下的大约 10% 是怎么回事呢?答案是与 LLVM 和 Rust 相关的软件,RISC-V 目前仍然缺乏对 LLVM 编译器的支持。Rust 其实也基于 LLVM,并且没有基于 GCC 或其它工具链的 Rust 编译器,LLVM 是唯一的选择,所以归结起来就是 LLVM 成了移植障碍。
目前 Debian 中有超过 500 个来自 Rust 生态的软件包(约占 4%),在 Rust 支持 RISC-V 64 之前,它们都无法构建和使用。
值得注意的是,Firefox 是依赖于 Rust 的主要高级包,但许多包也依赖于 librsvg2 渲染 SVG 图像,此库已切换到 Rust 上,而 Debian 当前还在使用 C 版本,这不是长久之计。
除了 Rust,其它软件包也在某种程度上直接依赖或使用 LLVM,这些都造成了移植 RISC-V 64 困难。不过开发者预计今年将会完成对 LLVM for RISC-V 64 的支持。
开发者也介绍了接下来几个月的优化计划:
(文/开源中国)