Zweiwöchentlicher RuyiSDK-Bericht
Erhalten Sie alle zwei Wochen die neuesten Entwicklungsupdates
即将进入年底,各类技术会议密集召开,各种新产品和新动态不断发布,各类社区的技术氛围空前浓厚。RuyiSDK 将在下个月按计划发布 V0.2 版本,欢迎大家关注和试用。
需求变更:ruyi v0.2 新增了 sysroot、QEMU 的支持需求,该版本的代码冻结因而未在上周完成。
目前仍然在做 QEMU、LLVM 的打包工作。
完成了从上游源码、平头哥源码构建的 GCC 工具链的打包,期间修复了上游 crosstool-ng 的 multilib 构建问题一处,待提交上游。
为方便未及时升级系统的同学们测试、使用,现已将工具链、ruyi
二进制的构建容器系统版本降低到了 Ubuntu 20.04。
但 ruyi
官方支持的系统版本基线维持不变:仍然为 Ubuntu 22.04、openEuler 23.09。
此外,对 RuyiSDK 软件源结构做了一些更新,详见文档:
- 为使 repo 内的软件包信息有条理,新增了软件包分类的概念,将原先扁平的目录结构加深 1 层;
- 为方便后续迭代、表达特殊语义等需要,预留了下划线开头的包名,后续再行 case-by-case 定义。
IDE 部分 10 日提交了一版基于 Eclipse 已有插件集成的 x86_64 的可执行程序,界面定制部分仅完成可执行程序 LOGO 定制和加载界面定制,未按照预期完成所需的定制任务。后因为 IDE 开发人员变动,开发进度再无推进。
现处于 IDE 开发人员招聘中。
完成了 Profiles 的 gcc 支持,重构了 zcmp 扩展的 binutils 实现,已向上游提交 patch,等待社区审核中。继续进行 B/K 扩展的 intrinsic 开发工作,预计本月完成支持后向上游提交工作。RUYISDK 工具链方面正在重构工具链分支以 RVV 扩展的最新特性,准备补充基础的 riscv-gcc 使用说明,包括支持扩展及常用选项参数等,预计 0.2 版本发布前完成。
天气渐冷,RuyiSDK 双周进展已经来到了第 9 期。从本期开始,RuyiSDK 双周进展将采用全新的内容组织形式,期望能给您带来更好的体验,成为您冬日里的一缕暖阳。
项目地址:https://github.com/ruyisdk/ruyi
相比两周前,调整了一部分软件源的元数据格式,联网包管理器的功能也实现了大部分。
目前实现了以下的功能点:
- 二进制分发:可以打包为单个二进制可执行文件了。
平台适配方面,我们为 amd64 架构适配了 Ubuntu 22.04、openEuler 23.09 两个发行版,
为 riscv64 架构适配了 Debian 的 20231109 快照版本(预期在 Fedora 等发行版上也能正常运行)。
- 软件源相关:实 现了软件源的同步、软件包的安装。
- 已安装包的管理:可以初步建立类似 Python virtualenv 用法的虚拟环境了:
此做法可广泛兼容多种构建系统的现有集成方式,从而方便开发者使用。
(目前虚拟环境内的命令符号链接仍待完善。)
除此之外,在 ruyi
的软件源相关功能基本完成后,也同步开始了测试工作。
目前与测试同学初步对接了 user story 的前半部分,待虚拟环境的符号链接功能完成后将继续下一步工作。
前期 RuyiIDE 方面完成了基于 Eclipse 插件开发的技术学习。目前正在开展 Eclipse 定制发行版的制作和安装程序打包工作,具体要求如下:
对标 Eclipse IDE for Embedded C/C++ Developers 包含的主要插件,基于 Eclipse 生成一个自定义的 Eclipse Distribution,形成 RuyiSDK IDE 的初始打包过程/程序。要求首先能够产出功能等同于 Eclipse IDE for Embedded C/C++ Developers 的 Linux 环境下 IDE 安装程序,并在此基础上完成定制界面定制。
继续开发 RISC-V Profiles,Bitmanip/Scalar crypto intrinsic 在工具链上的支持,开始准备向上游提交 RVV 0.7&1.0 的兼容性 patch。完成了 RVP 向 gcc13 的 porting 工作,目前仍在 review 修改中。