济曝喊 发表于 2025-6-9 15:19:41

在OERV也可以玩MC(下)

  话接上回,上期讲述了在OERV安装HMCL的历程,这期讲讲HMCL的打包。
  Show openEuler:24.09 / HMCL - 开源软件构建与测试。在这个网站里,可以看到有好几个文件,这些都跟HMCL打包有关。 第一个是_service文件,这个文件用于从特定仓库里面拉取代码文件到当前平台,可以看见每个文件都有特定前缀,这些都是拉取过来之后平台自动加的。

  如果想自己动手进行打包,只需要把url的git仓库换掉就行。然后上传_service文件,相应的仓库就拉取过来了。
  此外还可以看到有spec文件和一个压缩包,其它的可以暂时不用关注。spec文件用于编写打包脚本,包括包的编译依赖、运行依赖以及编译行为等。压缩文件是源码包文件,从包对应的官方网站下载。接下来重点关注spec文件的编写过程。
  如果对spec文件的规范不熟悉,可以先看这篇:软件包引入前置基础知识(RPM/SPEC/DNF) | openEuler社区。

  这么简洁,我一开始也没想到。甚至在编译阶段都不需要写任何脚本,只需要在下载阶段进行相应的文件拷贝和处理就行。BuildRequires是编译依赖,主要用于编译过程,在下载阶段需要通过desktop-file-validate以及desktop-file-install对desktop文件处理。而Requires是运行时依赖,如果编译好HMCL,想要安装则需要jdk17的加持,可以看到上期我为了安装jdk17也是费了不少心思。BuildRequires和Requires填写的包都需要obs平台事先编译过,不然平台会显示unresolvable。

  %files阶段其实和%install阶段差不多,%build和%install都是在临时环境中运行的,为了防止破坏系统,到了%files阶段则列出rpm包里的文件有哪些,下载了之后就可以见到这些文件了,这个阶段是指明文件最终的安装路径的。至于要写哪些文件,则需要自己打开压缩包查看,需要对软件包本身比较熟悉(往往很多时候都是看到编译失败再来改改spec文件,一次性完整写好我做不到
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

唐嘉懿 发表于 2025-10-21 09:38:06

收藏一下   不知道什么时候能用到

水苯 发表于 2025-12-19 22:19:49

新版吗?好像是停更了吧。

井晶灵 发表于 2025-12-27 02:48:37

前排留名,哈哈哈

姬宜欣 发表于 2025-12-29 18:16:57

很好很强大我过来先占个楼 待编辑

更成痒 发表于 2026-1-16 18:02:42

不错,里面软件多更新就更好了

咒卖箴 发表于 2026-1-22 18:26:24

谢谢分享,试用一下

晾棋砷 发表于 2026-1-22 22:27:27

新版吗?好像是停更了吧。

甦忻愉 发表于 2026-1-23 07:02:32

收藏一下   不知道什么时候能用到

杜优瑗 发表于 2026-1-23 07:11:59

东西不错很实用谢谢分享

闵雇 发表于 2026-1-26 10:33:59

用心讨论,共获提升!

滤冽 发表于 2026-1-26 10:59:16

热心回复!

钦遭聘 发表于 2026-2-1 05:52:53

感谢,下载保存了

鞠彗云 发表于 2026-2-3 08:26:23

yyds。多谢分享

拍棹 发表于 2026-2-6 04:11:26

这个好,看起来很实用

糙昧邵 发表于 2026-2-7 03:12:30

这个有用。

百杲憔 发表于 2026-2-9 16:19:41

前排留名,哈哈哈

全阳霁 发表于 2026-2-9 21:40:43

前排留名,哈哈哈

芮梦月 发表于 2026-2-10 04:43:58

这个有用。

忆雏闲 发表于 2026-2-10 18:58:14

收藏一下   不知道什么时候能用到
页: [1] 2
查看完整版本: 在OERV也可以玩MC(下)