Following on from a previous blog "
Building OpenJDK 11 on Solaris 11 x86_64" I have added instructions for OpenJDK 12 on Oracle Solaris 11.4 x64 (
SPARC version downloadable).
- At this time you require Oracle Solaris Studio 12.4 or Oracle Solaris Studio 12.6
- Do not build on a NFS drive, since will be very slow.
- Tested on Solaris 11.4.5.3.0 with Oracle Solaris Studio 12.4
- Disable hotspot-gtest & shenandoahgc & dtrace
- You need to have OpenJDK 11 installed already.
- Download the "EM_486" patch http://robpetti.com/files/jdk11-sol114.patch
# cd /usr/tmp
# export PATH=/usr/local/openjdk/jdk11/bin:/opt/solarisstudio12.4/bin:/usr/bin:/usr/sbin:/usr/gnu/bin
# which cc java
/opt/solarisstudio12.4/bin/cc
/usr/local/openjdk/jdk11/bin/java
# hg clone http://hg.openjdk.java.net/jdk/jdk12
destination directory: jdk12
requesting all changes
adding changesets
adding manifests
manifests [===============================> ] 18408/53167
adding file changes
added 53167 changesets with 461022 changes to 181805 files
updating to branch default
67026 files updated, 0 files merged, 0 files removed, 0 files unresolved
# cd jdk12
# patch -p1 < jdk11-sol114.patch
patching file src/hotspot/os/solaris/os_solaris.cpp
Hunk #1 succeeded at 1559 (offset -18 lines).
# bash configure --prefix=/usr/local/openjdk/jdk12 --disable-hotspot-gtest --with-jvm-features=-shenandoahgc,-dtrace
Runnable configure script is not present
Generating runnable configure script at /var/tmp/jdk12/build/.configure-support/generated-configure.sh
......
====================================================
The existing configuration has been successfully updated in
/var/tmp/jdk12/build/solaris-x86_64-server-release
using configure arguments '--prefix=/usr/local/openjdk/jdk12 --disable-hotspot-gtest --with-jvm-features=-shenandoahgc,-dtrace'.
Configuration summary:
* Debug level: release
* HS debug level: product
* JVM variants: server
* JVM features: server: 'aot cds cmsgc compiler1 compiler2 epsilongc g1gc graal jfr jni-check jvmci jvmti management nmt parallelgc serialgc se
rvices vm-structs'
* OpenJDK target: OS: solaris, CPU architecture: x86, address length: 64
* Version string: 12-internal+0-adhoc.andrew.jdk12 (12-internal)
Tools summary:
* Boot JDK: openjdk version "11-internal" 2018-09-25 OpenJDK Runtime Environment (build 11-internal+0-adhoc.andrew.jdk11) OpenJDK 64-Bit Server VM (build 11-internal+0-adhoc.andrew.jdk11, mixed mode) (at /usr/local/openjdk/jdk11/jvm/openjdk-11-internal)
* Toolchain: solstudio (Oracle Solaris Studio)
* C Compiler: Version 5.13 (at /opt/solarisstudio12.4/bin/cc)
* C++ Compiler: Version 5.13 (at /opt/solarisstudio12.4/bin/CC)
Build performance summary:
* Cores to use: 12
* Memory limit: 16297 MB
WARNING: The result of this configuration has overridden an older
configuration. You *should* run 'make clean' to make sure you get a
proper build. Failure to do so might result in strange build problems.
# gmake
Building target 'default (exploded-image)' in configuration 'solaris-x86_64-server-release'
Compiling 8 files for BUILD_TOOLS_LANGTOOLS
...
Creating support/modules_libs/jdk.security.auth/libjaas.so from 1 file(s)
Compiling 4 files for BUILD_JIGSAW_TOOLS
Stopping sjavac server
Finished building target 'default (exploded-image)' in configuration 'solaris-x86_64-server-release'
# gmake images
Building target 'images' in configuration 'solaris-x86_64-server-release'
Compiling 31 files for BUILD_JRTFS
Creating support/modules_libs/java.base/jrt-fs.jar
...
Compiling 1 files for CLASSLIST_JAR
Creating support/classlist.jar
Creating images/jmods/jdk.jlink.jmod
Creating images/jmods/java.base.jmod
Creating jdk image
Creating CDS archive for jdk image
Stopping sjavac server
Finished building target 'images' in configuration 'solaris-x86_64-server-release'
# ./build/*/images/jdk/bin/java -version
openjdk version "12-internal" 2019-03-19
OpenJDK Runtime Environment (build 12-internal+0-adhoc.andrew.jdk12)
OpenJDK 64-Bit Server VM (build 12-internal+0-adhoc.andrew.jdk12, mixed mode, sharing)
# gmake install
Building target 'install' in configuration 'solaris-x86_64-server-release'
Installing jdk image into /usr/local/openjdk/jdk12/jvm/openjdk-12-internal
and creating 33 links from /usr/local/openjdk/jdk12/bin into the jdk.
Finished building target 'install' in configuration 'solaris-x86_64-server-release'
Formatting: I now use http://codeformatter.blogspot.co.uk for code formatting.
No comments:
Post a Comment