OpenJDK 10 zero For Mips32el java -version IncompatilveClassChangeError
Mikael Vidstedt
mikael.vidstedt at oracle.com
Fri Jun 5 06:37:51 UTC 2020
Where did you grab the source code for the JDK you’re trying to build?
Cheers,
Mikael
> On Jun 4, 2020, at 11:07 PM, William Larson <wlarsong at gmail.com> wrote:
>
> Hello David,
>
> When running configure
> --with-buildjdk=./jdk/build/linux-x86_64-normal-server-release/jdk
>
> I get the following error
>
> configure: Potential Build JDK found at
> /opt/FaceClockJava/jdk10l/build/linux-x86_64-normal-server-release/jdk is
> incorrect JDK version (openjdk version "10-internal"); ignoring
> configure: (Your Build JDK must be version 9)
> checking for Build JDK... no
> configure: error: Could not find a suitable Build JDK
> configure exiting with result code 1
>
> How do I build with buildjdk10 when it's asking for 9?
>
>
>>> On Thu, Jun 4, 2020, 9:16 PM David Holmes <david.holmes at oracle.com> wrote:
>> William,
>> You need a JDK 10 build JDK not JDK 9 - as Mikael already stated and as
>> Magnus wrote:
>> "When we cross-compile, we need not only a Boot JDK (of version current
>> N-1) running on the build host platform, but we also need a Build JDK,
>> based on the current source code, running on the build host. (This is
>> for running jmod/jlink; it needs to be up to date)."
>> With your JDK 9 build JDK you are getting invalid jmod/jlink output
>> files that prevent the full image from executing. But the exploded image
>> that doesn't use all of those and so may execute okay.
>> David
>>> On 5/06/2020 12:22 pm, William Larson wrote:
>>> Hello David,
>>> I copied everything under
>>> build/linux-mipsel-normal-zero-release/images/jdk
>>> Got error
>>> I then tried just
>>> build/linux-mipsel-normal-zero-release/images/jre
>>> Got the error
>>> I even copied
>>> build/linux-mipsel-normal-zero-release/images/jmods
>>> Along side jre and jdk
>>> Still got the error
>>> I copied: (note the image folder is missing)
>>> This is a much much bigger folder
>>> build/linux-mipsel-normal-zero-release/jdk
>>> To the target and it works albeit very slowly.
>>> I just want the jre ideally.
>>> Thanks for the help,
>>> Will
>>> On Thu, Jun 4, 2020, 7:12 PM David Holmes <david.holmes at oracle.com
>>> <mailto:david.holmes at oracle.com>> wrote:
>>> Hi William,
>>> On 5/06/2020 10:00 am, William Larson wrote:
>>>> Hello,
>>>> I was able to successfully compile/build OpenJDK 10 with
>>> following configure
>>>> bash configure
>>>> --openjdk-target=mipsel-oe-linux
>> --with-sysroot=/usr/local/oecore-i686/sysroots/mips32el-nf-oe-linux
>> --with-toolchain-path=/usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/bin/mipsel-oe-linux
>> --with-libffi=/usr/local/oecore-i686/sysroots/mips32el-nf-oe-linux/usr/src/debug/libffi/3.0.13-r0/libffi-3.0.13
>>>> --with-jvm-variants=zero
>>>> --with-build-jdk=./jdk9/build/buildjdk/jdk
>>>> --with-boot-jdk=./jdk9/build/buildjdk/jdk
>>>> I applied this patch to OpenJDK 10 as mips has 128 signals not 64
>> https://groups.google.com/forum/#!topic/linux.debian.bugs.dist/Tmgse0HIzDc
>>>> I also Reference this mail from Magnus
>> https://mail.openjdk.java.net/pipermail/build-dev/2019-January/024735.html
>>>> Where he suggests using a boot JDK
>>>> CONF=linux-mipsel-normal-zero-release make images
>>>> Works
>>>> However if i copy the images to my QEMU based on the same sysroot
>> and
>>>> compiler above I get
>>>> ./java -version
>>>> Error occurred during initialization of boot layer
>>>> java.lang.IncompatibleClassChangeError: Implementing class
>>>> If I copy the JDK folder just outside of images folder
>>>> (build/linux-mipsel-normal-zero-release/jdk) it works OK albeit
>>> it takes a
>>>> LONG time to print
>>> That is not part of the image built by "make images", it is what is
>>> called the exploded image. So I'm not clear exactly what you copied
>>> which did not work? Was it everything under
>>> build/linux-mipsel-normal-zero-release/images/jdk
>>> ?
>>> Cheers,
>>> David
>>>> ./java -version
>>>> openjdk version "10-internal"
>>>> OpenJDK Runtime Environment (build 10-internal+0-adhoc.will.jdk10)
>>>> OpenJDK Zero VM (build 10-internal+0-adhoc.will.jdk10,
>>> interpreted mode)
>>>> Why is does
>>>> CONF=linux-mipsel-normal-zero-release make images
>>>> not work?
More information about the build-dev
mailing list