Bugzilla – Bug 1180743
Lack of JeOS identification strategies, for Bazel
Last modified: 2021-01-14 08:57:28 UTC
The cause of this issue is due to an absence of concrete (or people aren't aware of one?) way to probe JeOS environment/vCPU. I wasn't able to to find any proper introduction to JeOS approach. As far as I understood - it is about taking some previously cross-compiled executables (say, for rv64gc arch.), automatically generate some Qemu targeted OS image (to run the process, within the userspace of emulated OS) and run qemu-linux-user (with customized params) inside systemd-nspawn container. Please correct me in what is wrong, in my understanding. Here is the manual, for building Bazel: https://docs.bazel.build/versions/3.7.0/install-compile-source.html . Let's start with installing openjdk 16, under https://en.opensuse.org/openSUSE:RISC-V (assuming that you are already loged into the shell):
riscv:/root # zypper search openjdk Loading repository data... Reading installed packages... S | Name | Summary | Type --+----------------------------------+------------------------------------+-------- | java-11-openjdk | OpenJDK 11 Runtime Environment | package | java-11-openjdk-accessibility | OpenJDK 11 accessibility connector | package | java-11-openjdk-demo | OpenJDK 11 Demos | package | java-11-openjdk-devel | OpenJDK 11 Development Environment | package | java-11-openjdk-headless | OpenJDK 11 Runtime Environment | package | java-11-openjdk-javadoc | OpenJDK 11 API Documentation | package | java-11-openjdk-jmods | JMods for OpenJDK 11 | package | java-11-openjdk-src | OpenJDK 11 Source Bundle | package | java-14-openjdk | OpenJDK 14 Runtime Environment | package | java-14-openjdk-accessibility | OpenJDK 14 accessibility connector | package | java-14-openjdk-demo | OpenJDK 14 Demos | package | java-14-openjdk-devel | OpenJDK 14 Development Environment | package | java-14-openjdk-headless | OpenJDK 14 Runtime Environment | package | java-14-openjdk-javadoc | OpenJDK 14 API Documentation | package | java-14-openjdk-jmods | JMods for OpenJDK 14 | package | java-14-openjdk-src | OpenJDK 14 Source Bundle | package | java-15-openjdk | OpenJDK 15 Runtime Environment | package | java-15-openjdk-accessibility | OpenJDK 15 accessibility connector | package | java-15-openjdk-demo | OpenJDK 15 Demos | package | java-15-openjdk-devel | OpenJDK 15 Development Environment | package | java-15-openjdk-headless | OpenJDK 15 Runtime Environment | package | java-15-openjdk-javadoc | OpenJDK 15 API Documentation | package | java-15-openjdk-jmods | JMods for OpenJDK 15 | package | java-15-openjdk-src | OpenJDK 15 Source Bundle | package | java-16-openjdk | OpenJDK 16 Runtime Environment | package | java-16-openjdk-accessibility | OpenJDK 16 accessibility connector | package | java-16-openjdk-demo | OpenJDK 16 Demos | package | java-16-openjdk-devel | OpenJDK 16 Development Environment | package | java-16-openjdk-headless | OpenJDK 16 Runtime Environment | package | java-16-openjdk-javadoc | OpenJDK 16 API Documentation | package | java-16-openjdk-jmods | JMods for OpenJDK 16 | package | java-16-openjdk-src | OpenJDK 16 Source Bundle | package | java-1_8_0-openjdk | OpenJDK 8 Runtime Environment | package | java-1_8_0-openjdk-accessibility | OpenJDK 8 accessibility connector | package | java-1_8_0-openjdk-demo | OpenJDK 8 Demos | package | java-1_8_0-openjdk-devel | OpenJDK 8 Development Environment | package | java-1_8_0-openjdk-headless | OpenJDK 8 Runtime Environment | package | java-1_8_0-openjdk-javadoc | OpenJDK 8 API Documentation | package | java-1_8_0-openjdk-src | OpenJDK 8 Source Bundle | package riscv:/root # zypper install java-16-openjdk* Loading repository data... Reading installed packages... Resolving package dependencies... The following 46 NEW packages are going to be installed: at-spi2-core dbus-1-x11 fontconfig java-16-openjdk java-16-openjdk-accessibility java-16-openjdk-demo java-16-openjdk-devel java-16-openjdk-headless java-16-openjdk-javadoc java-16-openjdk-jmods java-16-openjdk-src javapackages-filesystem javapackages-tools libFLAC8 libX11-6 libX11-data libXau6 libXext6 libXi6 libXrender1 libXtst6 libatk-1_0-0 libatk-bridge-2_0-0 libatomic1 libatspi0 libfontconfig1 libfreetype6 libgif7 libjpeg8 liblcms2-2 libmozjs-78-0 libogg0 libpcsclite1 libpng16-16 libpolkit0 libpulse0 libsndfile1 libspeex1 libvorbis0 libvorbisenc2 libxcb1 pcsc-lite polkit polkit-default-privs timezone-java xprop The following 2 recommended packages were automatically selected: pcsc-lite timezone-java 46 new packages to install. Overall download size: 244.5 MiB. Already cached: 0 B. After the operation, additional 614.8 MiB will be used. Continue? [y/n/v/...? shows all options] (y): y Retrieving package javapackages-filesystem-5.3.1-4.1.riscv64 (1/46), 17.9 KiB ( 1.9 KiB unpacked) Retrieving: javapackages-filesystem-5.3.1-4.1.riscv64.rpm .............[done (976 B/s)] Retrieving package libX11-data-1.7.0-1.1.noarch (2/46), 165.7 KiB ( 1.2 MiB unpacked) Retrieving: libX11-data-1.7.0-1.1.noarch.rpm ....................................[done] Retrieving package libXau6-1.0.9-1.2.riscv64 (3/46), 15.0 KiB ( 10.0 KiB unpacked) Retrieving: libXau6-1.0.9-1.2.riscv64.rpm .......................................[done] Retrieving package libatk-1_0-0-2.36.0-1.2.riscv64 (4/46), 93.7 KiB (175.5 KiB unpacked) Retrieving: libatk-1_0-0-2.36.0-1.2.riscv64.rpm .................................[done] Retrieving package libatomic1-10.2.1+git1030-1.1.riscv64 (5/46), 23.1 KiB ( 21.9 KiB unpacked) Retrieving: libatomic1-10.2.1+git1030-1.1.riscv64.rpm ...........................[done] Retrieving package libgif7-5.2.1-1.2.riscv64 (6/46), 33.3 KiB ( 31.7 KiB unpacked) Retrieving: libgif7-5.2.1-1.2.riscv64.rpm .............................[done (992 B/s)] Retrieving package libjpeg8-8.2.2-64.1.riscv64 (7/46), 155.5 KiB (307.8 KiB unpacked) Retrieving: libjpeg8-8.2.2-64.1.riscv64.rpm .....................................[done] Retrieving package liblcms2-2-2.11-1.1.riscv64 (8/46), 146.5 KiB (270.8 KiB unpacked) Retrieving: liblcms2-2-2.11-1.1.riscv64.rpm .........................[done (2.4 KiB/s)] Retrieving package libogg0-1.3.4-1.2.riscv64 (9/46), 34.4 KiB ( 34.8 KiB unpacked) Retrieving: libogg0-1.3.4-1.2.riscv64.rpm .......................................[done] Retrieving package libpng16-16-1.6.37-1.2.riscv64 (10/46), 157.0 KiB (182.9 KiB unpacked) Retrieving: libpng16-16-1.6.37-1.2.riscv64.rpm ..................................[done] Retrieving package libspeex1-1.2-1.3.riscv64 (11/46), 60.3 KiB ( 82.0 KiB unpacked) Retrieving: libspeex1-1.2-1.3.riscv64.rpm .......................................[done] Retrieving package timezone-java-2020f-1.1.noarch (12/46), 160.5 KiB (365.0 KiB unpacked) Retrieving: timezone-java-2020f-1.1.noarch.rpm ......................[done (5.2 KiB/s)] Retrieving package javapackages-tools-5.3.1-4.1.riscv64 (13/46), 34.9 KiB ( 71.6 KiB unpacked) Retrieving: javapackages-tools-5.3.1-4.1.riscv64.rpm ............................[done] Retrieving package libxcb1-1.14-1.2.riscv64 (14/46), 55.0 KiB (110.7 KiB unpacked) Retrieving: libxcb1-1.14-1.2.riscv64.rpm ............................[done (2.4 KiB/s)] Retrieving package libmozjs-78-0-78.5.0-1.1.riscv64 (15/46), 3.2 MiB ( 7.3 MiB unpacked) Retrieving: libmozjs-78-0-78.5.0-1.1.riscv64.rpm ....................[done (1.9 MiB/s)] Retrieving package libvorbis0-1.3.7-1.2.riscv64 (16/46), 109.3 KiB (142.5 KiB unpacked) Retrieving: libvorbis0-1.3.7-1.2.riscv64.rpm ......................[done (747.0 KiB/s)] Retrieving package libFLAC8-1.3.3-1.2.riscv64 (17/46), 121.4 KiB (219.9 KiB unpacked) Retrieving: libFLAC8-1.3.3-1.2.riscv64.rpm ......................................[done] Retrieving package libfreetype6-2.10.4-1.1.riscv64 (18/46), 490.4 KiB (969.4 KiB unpacked) Retrieving: libfreetype6-2.10.4-1.1.riscv64.rpm ...................[done (179.3 KiB/s)] Retrieving package java-16-openjdk-javadoc-16.0.0.028-6.1.noarch (19/46), 12.1 MiB (260.0 MiB unpacked) Retrieving: java-16-openjdk-javadoc-16.0.0.028-6.1.noarch.rpm ......[done (1.8 MiB/s)] Retrieving package libX11-6-1.7.0-1.1.riscv64 (20/46), 624.2 KiB ( 1.0 MiB unpacked) Retrieving: libX11-6-1.7.0-1.1.riscv64.rpm ..........................[done (1.5 MiB/s)] Retrieving package libpolkit0-0.118-3.1.riscv64 (21/46), 67.3 KiB (127.0 KiB unpacked) Retrieving: libpolkit0-0.118-3.1.riscv64.rpm ....................................[done] Retrieving package libvorbisenc2-1.3.7-1.2.riscv64 (22/46), 92.8 KiB (633.9 KiB unpacked) Retrieving: libvorbisenc2-1.3.7-1.2.riscv64.rpm ...................[done (835.1 KiB/s)] Retrieving package fontconfig-2.13.1-2.3.riscv64 (23/46), 71.8 KiB (204.6 KiB unpacked) Retrieving: fontconfig-2.13.1-2.3.riscv64.rpm ...................................[done] Retrieving package xprop-1.2.5-1.1.riscv64 (24/46), 47.2 KiB ( 85.4 KiB unpacked) Retrieving: xprop-1.2.5-1.1.riscv64.rpm .........................................[done] Retrieving package libatspi0-2.38.0-1.1.riscv64 (25/46), 116.8 KiB (197.1 KiB unpacked) Retrieving: libatspi0-2.38.0-1.1.riscv64.rpm ....................................[done] Retrieving package libXrender1-0.9.10-1.3.riscv64 (26/46), 23.7 KiB ( 30.2 KiB unpacked) Retrieving: libXrender1-0.9.10-1.3.riscv64.rpm ..................................[done] Retrieving package libXext6-1.3.4-1.2.riscv64 (27/46), 33.3 KiB ( 51.5 KiB unpacked) Retrieving: libXext6-1.3.4-1.2.riscv64.rpm ............................[done (991 B/s)] Retrieving package dbus-1-x11-1.12.20-3.1.riscv64 (28/46), 29.3 KiB ( 22.6 KiB unpacked) Retrieving: dbus-1-x11-1.12.20-3.1.riscv64.rpm ..................................[done] Retrieving package polkit-0.118-3.1.riscv64 (29/46), 128.1 KiB (324.8 KiB unpacked) Retrieving: polkit-0.118-3.1.riscv64.rpm ........................................[done] Retrieving package libsndfile1-1.0.28-10.2.riscv64 (30/46), 195.3 KiB (375.9 KiB unpacked) Retrieving: libsndfile1-1.0.28-10.2.riscv64.rpm .................................[done] Retrieving package libfontconfig1-2.13.1-2.3.riscv64 (31/46), 180.4 KiB (222.9 KiB unpacked) Retrieving: libfontconfig1-2.13.1-2.3.riscv64.rpm ...............................[done] Retrieving package libXtst6-1.2.3-2.1.riscv64 (32/46), 16.8 KiB ( 18.1 KiB unpacked) Retrieving: libXtst6-1.2.3-2.1.riscv64.rpm ........................[done (142.4 KiB/s)] Retrieving package libXi6-1.7.10-1.2.riscv64 (33/46), 37.9 KiB ( 46.1 KiB unpacked) Retrieving: libXi6-1.7.10-1.2.riscv64.rpm .......................................[done] Retrieving package polkit-default-privs-1550+20201208.135bf51-1.1.noarch (34/46), 41.9 KiB (152.7 KiB unpacked) Retrieving: polkit-default-privs-1550+20201208.135bf51-1.1.noarch.rpm ...........[done] Retrieving package libpcsclite1-1.9.0-1.2.riscv64 (35/46), 49.2 KiB ( 26.1 KiB unpacked) Retrieving: libpcsclite1-1.9.0-1.2.riscv64.rpm ..................................[done] Retrieving package libpulse0-14.0-2.1.riscv64 (36/46), 313.6 KiB (691.5 KiB unpacked) Retrieving: libpulse0-14.0-2.1.riscv64.rpm ......................................[done] Retrieving package at-spi2-core-2.38.0-1.1.riscv64 (37/46), 60.7 KiB (114.3 KiB unpacked) Retrieving: at-spi2-core-2.38.0-1.1.riscv64.rpm .................................[done] Retrieving package pcsc-lite-1.9.0-1.2.riscv64 (38/46), 74.1 KiB (112.6 KiB unpacked) Retrieving: pcsc-lite-1.9.0-1.2.riscv64.rpm .....................................[done] Retrieving package libatk-bridge-2_0-0-2.38.0-1.1.riscv64 (39/46), 99.3 KiB (189.2 KiB unpacked) Retrieving: libatk-bridge-2_0-0-2.38.0-1.1.riscv64.rpm ..........................[done] Retrieving package java-16-openjdk-headless-16.0.0.028-6.1.riscv64 (40/46), 31.5 MiB (129.6 MiB unpacked) Retrieving: java-16-openjdk-headless-16.0.0.028-6.1.riscv64.rpm ....[done (2.0 MiB/s)] Retrieving package java-16-openjdk-16.0.0.028-6.1.riscv64 (41/46), 222.8 KiB (409.7 KiB unpacked) Retrieving: java-16-openjdk-16.0.0.028-6.1.riscv64.rpm .........................[done] Retrieving package java-16-openjdk-src-16.0.0.028-6.1.riscv64 (42/46), 42.8 MiB ( 47.2 MiB unpacked) Retrieving: java-16-openjdk-src-16.0.0.028-6.1.riscv64.rpm .........[done (1.9 MiB/s)] Retrieving package java-16-openjdk-devel-16.0.0.028-6.1.riscv64 (43/46), 4.5 MiB ( 7.7 MiB unpacked) Retrieving: java-16-openjdk-devel-16.0.0.028-6.1.riscv64.rpm .......[done (2.1 MiB/s)] Retrieving package java-16-openjdk-demo-16.0.0.028-6.1.riscv64 (44/46), 4.0 MiB ( 5.6 MiB unpacked) Retrieving: java-16-openjdk-demo-16.0.0.028-6.1.riscv64.rpm ........[done (1.4 MiB/s)] Retrieving package java-16-openjdk-accessibility-16.0.0.028-6.1.riscv64 (45/46), 71.8 KiB ( 71.2 KiB unpacked) Retrieving: java-16-openjdk-accessibility-16.0.0.028-6.1.riscv64.rpm[done (1.1 MiB/s)] Retrieving package java-16-openjdk-jmods-16.0.0.028-6.1.riscv64 (46/46), 141.9 MiB (148.3 MiB unpacked) Retrieving: java-16-openjdk-jmods-16.0.0.028-6.1.riscv64.rpm .......[done (1.8 MiB/s)] Checking for file conflicts: ....................................................[done] ( 1/46) Installing: javapackages-filesystem-5.3.1-4.1.riscv64 ...................[done] ( 2/46) Installing: libX11-data-1.7.0-1.1.noarch ................................[done] ( 3/46) Installing: libXau6-1.0.9-1.2.riscv64 ...................................[done] ( 4/46) Installing: libatk-1_0-0-2.36.0-1.2.riscv64 .............................[done] ( 5/46) Installing: libatomic1-10.2.1+git1030-1.1.riscv64 .......................[done] ( 6/46) Installing: libgif7-5.2.1-1.2.riscv64 ...................................[done] ( 7/46) Installing: libjpeg8-8.2.2-64.1.riscv64 .................................[done] ( 8/46) Installing: liblcms2-2-2.11-1.1.riscv64 .................................[done] ( 9/46) Installing: libogg0-1.3.4-1.2.riscv64 ...................................[done] (10/46) Installing: libpng16-16-1.6.37-1.2.riscv64 ..............................[done] (11/46) Installing: libspeex1-1.2-1.3.riscv64 ...................................[done] (12/46) Installing: timezone-java-2020f-1.1.noarch ..............................[done] (13/46) Installing: javapackages-tools-5.3.1-4.1.riscv64 ........................[done] (14/46) Installing: libxcb1-1.14-1.2.riscv64 ....................................[done] (15/46) Installing: libmozjs-78-0-78.5.0-1.1.riscv64 ............................[done] (16/46) Installing: libvorbis0-1.3.7-1.2.riscv64 ................................[done] (17/46) Installing: libFLAC8-1.3.3-1.2.riscv64 ..................................[done] (18/46) Installing: libfreetype6-2.10.4-1.1.riscv64 .............................[done] (19/46) Installing: java-16-openjdk-javadoc-16.0.0.0~28-6.1.noarch ..............[done] Additional rpm output: update-alternatives: using /usr/share/javadoc/java-16-openjdk/api to provide /usr/share/javadoc/java (javadocdir) in auto mode (20/46) Installing: libX11-6-1.7.0-1.1.riscv64 ..................................[done] (21/46) Installing: libpolkit0-0.118-3.1.riscv64 ................................[done] (22/46) Installing: libvorbisenc2-1.3.7-1.2.riscv64 .............................[done] (23/46) Installing: fontconfig-2.13.1-2.3.riscv64 ...............................[done] (24/46) Installing: xprop-1.2.5-1.1.riscv64 .....................................[done] (25/46) Installing: libatspi0-2.38.0-1.1.riscv64 ................................[done] (26/46) Installing: libXrender1-0.9.10-1.3.riscv64 ..............................[done] (27/46) Installing: libXext6-1.3.4-1.2.riscv64 ..................................[done] (28/46) Installing: dbus-1-x11-1.12.20-3.1.riscv64 ..............................[done] Additional rpm output: update-alternatives: using /usr/bin/dbus-launch.x11 to provide /usr/bin/dbus-launch (dbus-launch) in auto mode (29/46) Installing: polkit-0.118-3.1.riscv64 ....................................[done] (30/46) Installing: libsndfile1-1.0.28-10.2.riscv64 .............................[done] (31/46) Installing: libfontconfig1-2.13.1-2.3.riscv64 ...........................[done] (32/46) Installing: libXtst6-1.2.3-2.1.riscv64 ..................................[done] (33/46) Installing: libXi6-1.7.10-1.2.riscv64 ...................................[done] (34/46) Installing: polkit-default-privs-1550+20201208.135bf51-1.1.noarch .......[done] Additional rpm output: Updating /etc/sysconfig/security ... (35/46) Installing: libpcsclite1-1.9.0-1.2.riscv64 ..............................[done] (36/46) Installing: libpulse0-14.0-2.1.riscv64 ..................................[done] (37/46) Installing: at-spi2-core-2.38.0-1.1.riscv64 .............................[done] (38/46) Installing: pcsc-lite-1.9.0-1.2.riscv64 .................................[done] Additional rpm output: Created symlink /etc/systemd/system/sockets.target.wants/pcscd.socket -> /usr/lib/systemd/system/pcscd.socket. (39/46) Installing: libatk-bridge-2_0-0-2.38.0-1.1.riscv64 ......................[done] (40/46) Installing: java-16-openjdk-headless-16.0.0.028-6.1.riscv64 ............[done] (41/46) Installing: java-16-openjdk-16.0.0.028-6.1.riscv64 .....................[done] (42/46) Installing: java-16-openjdk-src-16.0.0.028-6.1.riscv64 .................[done] (43/46) Installing: java-16-openjdk-devel-16.0.0.028-6.1.riscv64 ...............[done] Additional rpm output: update-alternatives: using /usr/lib64/jvm/java-16-openjdk/bin/javac to provide /usr/bin/javac (javac) in auto mode update-alternatives: using /usr/lib64/jvm/java-16-openjdk to provide /usr/lib64/jvm/java-openjdk (java_sdk_openjdk) in auto mode update-alternatives: using /usr/lib64/jvm/java-16-openjdk to provide /usr/lib64/jvm/java-16 (java_sdk_16) in auto mode (44/46) Installing: java-16-openjdk-demo-16.0.0.028-6.1.riscv64 ................[done] (45/46) Installing: java-16-openjdk-accessibility-16.0.0.028-6.1.riscv64 .......[done] (46/46) Installing: java-16-openjdk-jmods-16.0.0.0~28-6.1.riscv64 ...............[done] Executing %posttrans scripts ....................................................[done]
Let's check whether we got OpenJDK 11 installed: riscv:/root # java -version javac -version openjdk version "16-internal" 2021-03-16 OpenJDK Runtime Environment (build 16-internal+28-suse-6.1-riscv64) OpenJDK 64-Bit Zero VM (build 16-internal+28-suse-6.1-riscv64, interpreted mode) riscv:/root # javac -version javac 16-internal Work well, so far. Now, you could switch the user and start building Bazel: oceanfish81@riscv:/home/oceanfish81/bazel> env EXTRA_BAZEL_ARGS='--jvmopt="-Xmx3G" --host_javabase=@local_jdk//:jdk' bash ./compile.sh
Here is what happened in my case: :leaves: Building Bazel from scratch...... :leaves: Building Bazel with Bazel. .OpenJDK 64-Bit Zero VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. DEBUG: /tmp/bazel_DaaLPRWl/out/external/bazel_toolchains/rules/rbe_repo/version_check.bzl:59:14: Current running Bazel is not a release version and one was not defined explicitly in rbe_autoconfig target. Falling back to '3.1.0' DEBUG: /tmp/bazel_DaaLPRWl/out/external/bazel_toolchains/rules/rbe_repo/checked_in.bzl:103:14: rbe_ubuntu1804_java11 not using checked in configs as detect_java_home was set to True DEBUG: /tmp/bazel_DaaLPRWl/out/external/bazel_toolchains/rules/rbe_repo/version_check.bzl:59:14: Current running Bazel is not a release version and one was not defined explicitly in rbe_autoconfig target. Falling back to '3.1.0' DEBUG: /tmp/bazel_DaaLPRWl/out/external/bazel_toolchains/rules/rbe_repo/checked_in.bzl:103:14: rbe_ubuntu1604_java8 not using checked in configs as detect_java_home was set to True DEBUG: /tmp/bazel_DaaLPRWl/out/external/build_bazel_rules_nodejs/internal/common/check_bazel_version.bzl:47:14: Current Bazel is not a release version, cannot check for compatibility. DEBUG: /tmp/bazel_DaaLPRWl/out/external/build_bazel_rules_nodejs/internal/common/check_bazel_version.bzl:49:14: Make sure that you are running at least Bazel 0.21.0. ERROR: /tmp/bazel_DaaLPRWl/out/external/local_config_cc/BUILD:47:19: in cc_toolchain_suite rule @local_config_cc//:toolchain: cc_toolchain_suite '@local_config_cc//:toolchain' does not contain a toolchain for cpu 'unknown' ERROR: Analysis of target '//src:bazel_nojdk' failed; build aborted: Analysis of target '@local_config_cc//:toolchain' failed INFO: Elapsed time: 684.978s INFO: 0 processes. FAILED: Build did NOT complete successfully (28 packages loaded, 69 targets co\ nfigured)
This looks more like a generic RiscV support issue in openSUSE.
(In reply to Klaus Kämpf from comment #4) > This looks more like a generic RiscV support issue in openSUSE. Klaus, I can't check farther cause I lack a good intro into JeOS