bishengJDK 发布了对于risc-v的支持,在risc-v架构上提供了完全的java能力,并且是业界领先的水平。
因此考虑将 bishengJDK 集成至openEuler ,使openEuler RISC-V 提供原生支持java 的RISC-V Linux发行版。
#I2689Z:是否可以 作为 jdk 集成至openEuler RISC-V 版本
需要进行的工作有:
1、为bishengJDK 在src-openeuler 添加软件包构建代码仓,以及补充相应的spec文件
2、在OBS 中的openEuler RISC-V工程(地址)出包验证,并且发布到repo源中
Hey whoisxxx, Welcome to openEuler Community.
All of the projects in openEuler Community are maintained by @openeuler-ci-bot.
That means the developers can comment below every pull request or issue to trigger Bot Commands.
Please follow instructions at https://gitee.com/openeuler/community/blob/master/en/sig-infrastructure/command.md to find the details.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
状态更新:
binshengjdk-11 base on openjdk-11 repo/spec
当前使用gitee https://gitee.com/wangjunqiangs/openjdk-11/tree/risc-v/
_service可自己补充
本地测试环境:
oE run on D1(用于本地编译)
局域网 yum repo(用于补充编译缺失包) => 当然也可以使用本地但是createrepo_c obs编译通过未更新到源
ps: 系统自带源替换为https://repo.openeuler.org/openEuler-preview/RISC-V/everything/ 下面简称 源base
自己建立Yum 源 下面简称 源wang
验证流程主线记录:
(SPECS)$rpmbuild -ba binshengjdk-11.spec
注意: obs server 上 xorg-x11-proto-devel 编译通过 但是仓库未更新
需要手动下载加入xorg-x11-proto-devel对应rpm 加入 源wang , createrepo --update 源仓库
在安装xorg-x11-proto-devel后,手动安装部分依赖(来自 源base ),缺失部分如下:
cups-devel 被 java-11-openjdk-1:11.0.11.9-7.riscv64 需要 需要cups-filters
java-11-openjdk-devel 被 java-11-openjdk-1:11.0.11.9-7.riscv64 需要 JDK的bootjdk
nss-devel 被 java-11-openjdk-1:11.0.11.9-7.riscv64 需要 ** 需要man-db**
nss-softokn-freebl-devel >= 3.16.1 被 java-11-openjdk-1:11.0.11.9-7.riscv64 需要 man-db
======================================================================================
使用 本地编译补充 的方式:
cups-devel 依赖于 cups-filters
cups-devel https://gitee.com/src-openeuler/cups fbd73f4114f85e16cddd89e2e5fdf7d1d90e6b71
cups-filters https://gitee.com/src-openeuler/cups-filters 0609dd61f21f6007308859a71536d16ae244366c
avahi-devel 被 cups-filters-1.26.1-2.riscv64 需要
cups-devel 被 cups-filters-1.26.1-2.riscv64 需要
cups-ipptool 被 cups-filters-1.26.1-2.riscv64 需要
dejavu-sans-fonts 被 cups-filters-1.26.1-2.riscv64 需要
ghostscript 被 cups-filters-1.26.1-2.riscv64 需要
pkgconfig(avahi-glib) 被 cups-filters-1.26.1-2.riscv64 需要
pkgconfig(dbus-1) 被 cups-filters-1.26.1-2.riscv64 需要
pkgconfig(ijs) 被 cups-filters-1.26.1-2.riscv64 需要
pkgconfig(libqpdf) 被 cups-filters-1.26.1-2.riscv64 需要 ** libqpdf spec不完整?**
pkgconfig(poppler) 被 cups-filters-1.26.1-2.riscv64 需要
poppler-cpp-devel 被 cups-filters-1.26.1-2.riscv64 需要 **poppler需要man-db**
poppler-utils 被 cups-filters-1.26.1-2.riscv64 需要
python3-cups 被 cups-filters-1.26.1-2.riscv64 需要 ** python版本不一致**
以编译avahi-devel 为例:
gtk2-devel 被 avahi-0.8-6.riscv64 需要
gtk3-devel >= 2.99.0 被 avahi-0.8-6.riscv64 需要
pkgconfig(pygobject-3.0) 被 avahi-0.8-6.riscv64 需要
xmltoman 被 avahi-0.8-6.riscv64 需要
关键依赖man-db
使用编译方式安装man-db
man-db 依赖于 po4a
使用编译方式安装po4a
perl(Module::Build) 被 po4a-0.54-2.noarch 需要 未继续追踪
perl(Text::WrapI18N) 被 po4a-0.54-2.noarch 需要 未继续追踪
texlive-kpathsea 被 po4a-0.54-2.noarch 需要 **失败原因(lunjit)**
texlive-kpathsea-bin 被 po4a-0.54-2.noarch 需要
扩展:
poppler-devel 被 texlive-base-7:20180414-31.riscv64 需要 **需要man-db 乃至 nss**
python3-devel 被 texlive-base-7:20180414-31.riscv64 需要 **python版本不匹配**
zziplib-devel 被 texlive-base-7:20180414-31.riscv64 需要 **需要 SDL_devel 乃至 meas**
=============================================================================================
使用 补充rpm 方式(下载rpm进入 源wang )
优先安装关键man-db
man-db下载来源:http://fedora.riscv.rocks/koji/buildinfo?buildID=7848
man-db 依赖于 libgdbm.so.5()(64bit) 来自gdbm 但是obs server spec过于简单?
补充安装libgdbm.so.5()(64bit)
来自 http://fr2.rpmfind.net/linux/RPM/openmandriva/cooker/riscv64/main/release/lib64gdbm6-1.18.1-5.riscv64.html 版本1.18.1-5 ** oe版本1.18-2**
关联 gdbm gdbm-devel ,为防止问题,更新同版本
同样从fedora下载相关包强制替换gdbm。gdbm-devel , oe需要检查spec
gdbm riscv64 1:1.18.1-5.fc33
gdbm-devel riscv64 1:1.18.1-5.fc33 **系统是版本7 源是8 依赖8 需要更新yum install readline(来自oe) **
Installing dependencies:
gdbm-libs riscv64 1:1.18.1-5.fc33
安装cups-filters 继续安装 cups-devel nss-devel nss-softokn-freebl-devel
下载来自:http://fedora.riscv.rocks/koji/packageinfo?packageID=15138
需要提供libqpdf.so.28()(64bit) 来自qpdf 但是 oe版本低 没有 需要qpdf-10.1.0, 检查spec是否正确
需要更新安装qpdf-libs
安装java-11-openjdk-devel
来源:http://fedora.riscv.rocks/koji/buildinfo?buildID=74333
java-11-openjdk-devel
java-11-openjdk
nothing provides xorg-x11-fonts-Type1 needed by java-11-openjdk-1:11.0.0.28-1.2.riscv64.fc29.riscv64
oe 没有 xorg-x11-fonts-Type1 来自fedora 需要强制安装
带来
nothing provides mkfontdir needed by xorg-x11-fonts-Type1-7.5-25.fc33.noarch 没有找到丢弃
nothing provides ttmkfdir needed by xorg-x11-fonts-Type1-7.5-25.fc33.noarch 来自fedora 29
java-11-openjdk-headless => java-11-openjdk => java-11-openjdk-devel
======================================================================================
源wang状态:
cups-filters-1.28.7-7.fc33.riscv64.rpm
cups-filters-debuginfo-1.28.7-7.fc33.riscv64.rpm
cups-filters-debugsource-1.28.7-7.fc33.riscv64.rpm
cups-filters-devel-1.28.7-7.fc33.riscv64.rpm
cups-filters-libs-1.28.7-7.fc33.riscv64.rpm
cups-filters-libs-debuginfo-1.28.7-7.fc33.riscv64.rpm
gdbm-1.18.1-5.fc33.riscv64.rpm
gdbm-debuginfo-1.18.1-5.fc33.riscv64.rpm
gdbm-debugsource-1.18.1-5.fc33.riscv64.rpm
gdbm-devel-1.18.1-5.fc33.riscv64.rpm
gdbm-libs-1.18.1-5.fc33.riscv64.rpm
gdbm-libs-debuginfo-1.18.1-5.fc33.riscv64.rpm
java-11-openjdk-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-debuginfo-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-debugsource-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-devel-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-devel-debuginfo-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-headless-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-headless-debuginfo-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-javadoc-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
java-11-openjdk-javadoc-zip-11.0.0.28-1.2.riscv64.fc29.riscv64.rpm
lib64gdbm6-1.18.1-5-omv4002.riscv64.rpm
man-db-2.7.5-3.fc28.0.riscv64.riscv64.rpm
man-db-2.7.5-3.fc28.0.riscv64.src.rpm
man-db-cron-2.7.5-3.fc28.0.riscv64.noarch.rpm
qpdf-10.1.0-1.fc33.riscv64.rpm
qpdf-debuginfo-10.1.0-1.fc33.riscv64.rpm
qpdf-debugsource-10.1.0-1.fc33.riscv64.rpm
qpdf-devel-10.1.0-1.fc33.riscv64.rpm
qpdf-libs-10.1.0-1.fc33.riscv64.rpm
qpdf-libs-debuginfo-10.1.0-1.fc33.riscv64.rpm
readline-8.0-2.oe1.riscv64.rpm
readline-8.0-2.oe1.src.rpm
readline-debuginfo-8.0-2.oe1.riscv64.rpm
readline-debugsource-8.0-2.oe1.riscv64.rpm
readline-devel-8.0-2.oe1.riscv64.rpm
readline-help-8.0-2.oe1.noarch.rpm
ttmkfdir-3.0.9-54.fc29.riscv64.rpm
urw-base35-bookman-fonts-20200910-1.oe1.noarch.rpm
urw-base35-c059-fonts-20200910-1.oe1.noarch.rpm
urw-base35-d050000l-fonts-20200910-1.oe1.noarch.rpm
urw-base35-fonts-20200910-1.oe1.noarch.rpm
urw-base35-fonts-20200910-1.oe1.src.rpm
urw-base35-fonts-common-20200910-1.oe1.noarch.rpm
urw-base35-fonts-devel-20200910-1.oe1.noarch.rpm
urw-base35-fonts-legacy-20200910-1.oe1.noarch.rpm
urw-base35-gothic-fonts-20200910-1.oe1.noarch.rpm
urw-base35-nimbus-mono-ps-fonts-20200910-1.oe1.noarch.rpm
urw-base35-nimbus-roman-fonts-20200910-1.oe1.noarch.rpm
urw-base35-nimbus-sans-fonts-20200910-1.oe1.noarch.rpm
urw-base35-p052-fonts-20200910-1.oe1.noarch.rpm
urw-base35-standard-symbols-ps-fonts-20200910-1.oe1.noarch.rpm
urw-base35-z003-fonts-20200910-1.oe1.noarch.rpm
xorg-x11-fonts-Type1-7.5-25.fc33.noarch.rpm
xorg-x11-proto-devel-2019.1-1.oe1.noarch.rpm
bishengJDK状态:
进展到:
Building targets 'images docs-zip' in configuration '/root/rpmbuild/BUILD/java-11-openjdk-11.0.11.9-7.riscv64/bishengjdk-jdk-11.0.11-ga/build'
Compiling 8 files for BUILD_TOOLS_LANGTOOLS
Compiling 19 properties into resource bundles for jdk.compiler
Parsing 2 properties into enum-like class for jdk.compiler
Compiling 13 properties into resource bundles for jdk.javadoc
Compiling 117 files for BUILD_java.compiler.interim
Compiling 394 files for BUILD_jdk.compiler.interim
Compiling 299 files for BUILD_jdk.javadoc.interim
Compiling 165 files for BUILD_TOOLS_JDK
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Compiling 2 files for COMPILE_DEPEND
Compiling 11 properties into resource bundles for java.base
Compiling 6 properties into resource bundles for java.base
Compiling 3015 files for java.base
Compiling 2 files for BUILD_BREAKITERATOR_BASE
Compiling 2 files for BUILD_BREAKITERATOR_LD
Creating hotspot/variant-server/tools/adlc/adlc from 13 file(s)
Compiling 2 files for BUILD_JVMTI_TOOLS
Compiling 1 files for BUILD_JFR_TOOLS
Creating support/modules_libs/java.base/server/libjvm.so from 828 file(s)
依然是需要的
open_euler中相关issue已标记完成,对应的OERV中openjdk11也已构建成功,关闭了a,https://build.tarsier-infra.com/package/show/openEuler:22.03/openjdk-11
登录 后才可以发表评论