大家好,我是 PLCT 丁丑小队的一名实习生。我们会定期在本版介绍 RuyiSDK 支持矩阵(网页版可以访问 https://matrix.ruyisdk.org/ )的近期进展、RISC-V 开发板/操作系统/软件支持情况、性能测试结果、软件生态进展同步等内容。
最近,我们小队在 RevyOS 上对一批经典的开源工程软件进行了可用性测试。为了系统地呈现结果,帖主在这里提出一个临时的可用性分级,主要用于本系列帖子,方便大家快速了解每款软件在 RISC-V 平台上的现状。这个分级不算非常严谨,更多是一种叙事逻辑,还请各位大佬指正。
软件可用性分级
-
RevyOS 源内开箱即用 (Repo Out-of-the-Box)
- 软件已由 RevyOS/Debian 社区打包,可通过
apt一键安装,无需任何额外操作即可正常使用。这是生态成熟度和 Revy 老师打包时掉的头发的最佳体现。 - RevyOS 上的工程软件生态观测 (2): 源内开箱即用的工程类软件
- 软件已由 RevyOS/Debian 社区打包,可通过
-
社区/上游预编译包可用 (Pre-compiled Package Available)
- RevyOS 源内暂无,但软件官网或第三方社区(如 Ubuntu)提供了可直接在 RevyOS 上运行的预编译包。通常下载解压即可使用,非常方便
(虽然安装别的发行版的包有时可能会弄坏你的环境)。 - RevyOS上的工程软件生态观测 (3): 预编译包:英雄不问出处,好包不问来路,这我拾的
- RevyOS 源内暂无,但软件官网或第三方社区(如 Ubuntu)提供了可直接在 RevyOS 上运行的预编译包。通常下载解压即可使用,非常方便
-
需自行构建或魔改 (Build/Hack Required)
- 软件需要从源码编译。这个级别覆盖范围较广,从标准的
./configure && make,到需要手动安装一堆开发依赖、修改构建脚本、甚至对源码进行少量 patch 以适应 RISC-V 架构或新版工具链都归于此类。 - RevyOS上的工程软件生态观测 (4): 构建之从入门到放弃 (上):GNU Make 偶尔也有点好用,你们都收到通知了吗?
- …
- 软件需要从源码编译。这个级别覆盖范围较广,从标准的
-
构建失败 (Build Failure)
- 经过了包括魔改在内的各种尝试,由于深层次的依赖问题、架构不兼容、或者古老的代码无法与现代编译器协同工作等原因,最终未能成功构建或使其正常运行。
(也可能是 skill issue) - 待补完。
- 经过了包括魔改在内的各种尝试,由于深层次的依赖问题、架构不兼容、或者古老的代码无法与现代编译器协同工作等原因,最终未能成功构建或使其正常运行。
-
失传的软件 (Lost Media)
- 软件的官网、代码仓库均已失效,在互联网上无法找到其源代码或任何可用二进制文件,说不定 r/lostmedia 会感兴趣吧。
工程软件测试总览
下面是我们本次测试的软件列表(基本来自于 Opennovation)及其可用性状态。在后续的系列帖子中,我们会从体验最好的软件开始,分门别类地详细介绍它们的测试过程。
| 软件名称 | 简要描述 | 可用性状态 | 详细报告 |
|---|---|---|---|
| CAD 软件 | |||
| Sweet Home 3D | 室内设计 CAD 软件 | RevyOS 源内开箱即用 | 链接 |
| Sailcut CAD | 用于设计和可视化帆的软件 | RevyOS 源内开箱即用 | 链接 |
| SagCAD | 简单易用的 2D CAD/CAM 软件 | 社区/上游预编译包可用 | 链接 |
| QCad | 使用 Qt 的 2D 通用 CAD 系统 | 需自行构建或魔改 | 链接 |
| BRL-CAD | 成熟的构造实体几何 (CSG) CAD 系统 | 构建失败 | 链接 |
| VARKON | 高级 CAD 系统 | 构建失败 | 链接 |
| PythonCAD | 用 Python 编写的 2D 通用 CAD 系统 | 构建失败 | 链接 |
| 有限元分析 (FEA) 软件 | |||
| FEniCS | 自动化 ODE/PDE 求解器 | RevyOS 源内开箱即用 | 链接 |
| FreeFEM | 有限元软件系列 | RevyOS 源内开箱即用 | 链接 |
| XmdS | 可扩展的多维模拟器 | RevyOS 源内开箱即用 | 链接 |
| Impact | 显式动态有限元程序 (Java) | 社区/上游预编译包可用 | 链接 |
| ALBERTA | 通用有限元方法库 | 需自行构建或魔改 | 链接 |
| Elmer | 多物理场问题的 FEA 软件 | 需自行构建或魔改 | 链接 |
| GetDP | 处理离散问题的通用环境 | 需自行构建或魔改 | 链接 |
| OOFEM | 通用有限元程序 | 需自行构建或魔改 | 链接 |
| SLFFEA | 结构有限元分析求解器 | 需自行构建或魔改 | 链接 |
| TOCHNOG | 免费有限元程序 | 需自行构建或魔改 | 链接 |
| CalculiX | 三维结构有限元程序 | 需自行构建或魔改 | 链接 |
| Code-Aster | 结构和热机械软件 | 构建失败 | 链接 |
| FElt | 固体力学 FEA | 构建失败 | 链接 |
| FELyX | 通用有限元方法工具箱 | 构建失败 | 链接 |
| deal.II | C++ PDE 求解库 | 构建失败 | 链接 |
| 前后处理与可视化 | |||
| Gmsh | 图形化 FEA CAD 工具、网格生成器 | RevyOS 源内开箱即用 | 链接 |
| MeshLab | 3D 三角网格处理系统 | RevyOS 源内开箱即用 | 链接 |
| FSLView/FSLeyes | 医学 MRI 可视化工具 | 需自行构建或魔改 | 链接 |
| OpenCASCADE | 高级 CAD 库 | 需自行构建或魔改 | 链接 |
| NETGEN | 自动 2D/3D 网格生成器 | 需自行构建或魔改 | 链接 |
| MayaVi | 基于 VTK 的数据可视化工具 | 需自行构建或魔改 | 链接 |
| Paraview | 并行可视化应用程序 | 构建失败 | 链接 |
| VisIt | 并行可视化工具 | 构建失败 | 链接 |
| Discretizer | 网格生成工具 | 构建失败 | 链接 |
| enGrid | 自动 2D/3D 网格生成器 | 构建失败 | 链接 |
| VisTrails | 可视化流程工具 | 构建失败 | 链接 |
| Salome | FEA 前后处理图形框架 | 构建失败 | 链接 |
| Caret | 可视化工具 | 失传的软件 | 链接 |
| Illuminator | 并行可视化库 | 失传的软件 | 链接 |
| 其他 | |||
| FiPy | Python 有限体积 PDE 求解器 | 需自行构建或魔改 | 链接 |
| Julian | 边界元代码 | 失传的软件 | 链接 |
| RheoPlast | 并行 C PDE 求解器 | 失传的软件 | 链接 |
欢迎各位复现/吐槽丁丑小队的所有测试结果。
如果有对我们的测试方法/结果有任何建议/问题,欢迎直接在 GitHub 开 issue,或者在论坛 @ 我们、回帖询问。









