53 Star 149 Fork 139

openEuler / RISC-V

 / 详情

[LV2+] 集成bishengJDK 进openEuler RISC-V

已完成
任务 成员
创建于  
2020-12-07 19:32

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源中

评论 (6)

whoisxxx 创建了任务
whoisxxx 关联仓库设置为openEuler/RISC-V
展开全部操作日志

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.

石榴派 已经正在进行中啦... JAVA 是石榴派民族棋北向应用的基础平台。

由 bisheng 团队操刀! :pray: 祝早日实现时,在 SIG 分享。

wuwei_plct 修改了描述
wuwei_plct 修改了标题

状态更新:
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

  • nothing provides libc.so.6(GLIBC_2.33)(64bit) needed by java-11-openjdk-devel-11.0.12.0-14.1.riscv64
  • nothing provides libjava.so()(64bit) needed by java-11-openjdk-devel-11.0.12.0-14.1.riscv64
  • nothing provides libjli.so()(64bit) needed by java-11-openjdk-devel-11.0.12.0-14.1.riscv64
  • nothing provides update-alternatives needed by java-11-openjdk-devel-11.0.12.0-14.1.riscv64

java-11-openjdk

  • nothing provides libc.so.6(GLIBC_2.33)(64bit) needed by java-11-openjdk-11.0.12.0-14.1.riscv64
  • nothing provides libjava.so()(64bit) needed by java-11-openjdk-11.0.12.0-14.1.riscv64
  • nothing provides libawt.so()(64bit) needed by java-11-openjdk-11.0.12.0-14.1.riscv64
  • nothing provides libjpeg.so.8()(64bit) needed by java-11-openjdk-11.0.12.0-14.1.riscv64
  • nothing provides libjpeg.so.8(LIBJPEG_8.0)(64bit) needed by java-11-openjdk-11.0.12.0-14.1.riscv64
  • nothing provides libpulse.so.0()(64bit) needed by java-11-openjdk-11.0.12.0-14.1.riscv64
  • nothing provides libpulse.so.0(PULSE_0)(64bit) needed by java-11-openjdk-11.0.12.0-14.1.riscv64
  • nothing provides java-11-openjdk-headless = 11.0.12.0-14.1 needed by java-11-openjdk-11.0.12.0-14.1.riscv64

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

laokz 任务状态待办的 修改为已完成

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(6)
5329419 openeuler ci bot 1632792936 5631341 yuandj 1624973227
Shell
1
https://gitee.com/openeuler/RISC-V.git
git@gitee.com:openeuler/RISC-V.git
openeuler
RISC-V
RISC-V

搜索帮助