Skip to main content

Newsletter RuyiSDK

Get the latest development progress every two weeks

第 010 期·2023 年 11 月 21 日

· 3 min read
xijing21
RuyiSDK 项目经理
ArchFeh
RuyiSDK 社区经理(已离职)

卷首语

即将进入年底,各类技术会议密集召开,各种新产品和新动态不断发布,各类社区的技术氛围空前浓厚。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

IDE 部分 10 日提交了一版基于 Eclipse 已有插件集成的 x86_64 的可执行程序,界面定制部分仅完成可执行程序 LOGO 定制和加载界面定制,未按照预期完成所需的定制任务。后因为 IDE 开发人员变动,开发进度再无推进。

现处于 IDE 开发人员招聘中。

GCC

完成了 Profiles 的 gcc 支持,重构了 zcmp 扩展的 binutils 实现,已向上游提交 patch,等待社区审核中。继续进行 B/K 扩展的 intrinsic 开发工作,预计本月完成支持后向上游提交工作。RUYISDK 工具链方面正在重构工具链分支以 RVV 扩展的最新特性,准备补充基础的 riscv-gcc 使用说明,包括支持扩展及常用选项参数等,预计 0.2 版本发布前完成。

第 009 期·2023 年 11 月 07 日

· 3 min read
xijing21
RuyiSDK 项目经理
ArchFeh
RuyiSDK 社区经理(已离职)

卷首语

天气渐冷,RuyiSDK 双周进展已经来到了第 9 期。从本期开始,RuyiSDK 双周进展将采用全新的内容组织形式,期望能给您带来更好的体验,成为您冬日里的一缕暖阳。

包管理器

项目地址:https://github.com/ruyisdk/ruyi

相比两周前,调整了一部分软件源的元数据格式,联网包管理器的功能也实现了大部分。 目前实现了以下的功能点:

  • 二进制分发:可以打包为单个二进制可执行文件了。 平台适配方面,我们为 amd64 架构适配了 Ubuntu 22.04、openEuler 23.09 两个发行版, 为 riscv64 架构适配了 Debian 的 20231109 快照版本(预期在 Fedora 等发行版上也能正常运行)。
  • 软件源相关:实现了软件源的同步、软件包的安装。
  • 已安装包的管理:可以初步建立类似 Python virtualenv 用法的虚拟环境了: 此做法可广泛兼容多种构建系统的现有集成方式,从而方便开发者使用。 (目前虚拟环境内的命令符号链接仍待完善。)

除此之外,在 ruyi 的软件源相关功能基本完成后,也同步开始了测试工作。 目前与测试同学初步对接了 user story 的前半部分,待虚拟环境的符号链接功能完成后将继续下一步工作。

IDE

前期 RuyiIDE 方面完成了基于 Eclipse 插件开发的技术学习。目前正在开展 Eclipse 定制发行版的制作和安装程序打包工作,具体要求如下:

对标 Eclipse IDE for Embedded C/C++ Developers 包含的主要插件,基于 Eclipse 生成一个自定义的 Eclipse Distribution,形成 RuyiSDK IDE 的初始打包过程/程序。要求首先能够产出功能等同于 Eclipse IDE for Embedded C/C++ Developers 的 Linux 环境下 IDE 安装程序,并在此基础上完成定制界面定制。

GCC

继续开发 RISC-V Profiles,Bitmanip/Scalar crypto intrinsic 在工具链上的支持,开始准备向上游提交 RVV 0.7&1.0 的兼容性 patch。完成了 RVP 向 gcc13 的 porting 工作,目前仍在 review 修改中。