Here are my list of questions i want to know the answers:
- jdk8u built from openjdk source in Solaris 10 can be used for Solaris 11?
Solaris 10:
Oracle Solaris 10 8/11 s10x_u10wos_17b X86
Assembled 23 August 2011
Solaris studio: 12.3
bash-3.2# isainfo -b
64
Solaris 11:
Oracle Solaris 11.4 X86
Assembled 26 March 2020
# isainfo -b
64
Some vendors like AdoptOpenJDK are giving the same JDK & JRE binaries for Solaris 10 & 11. Can i also use the same jdk build in Solaris 10 for Solaris 11?
- Can we build jdk8u for Solaris 11 x86. Jdk8u source code from openjdk checks the pre-requisites and it the CC and C++ compilers from Solaris studio from 12.1 to 12.4. But Solaris 11 supports Solaris studio above 12.4(developer studio) versions. Anyone have tried building it from http://hg.openjdk.java.net/jdk8u/jdk8u/.
I did give a try, several times. I've tried building in Solaris 10 and i got succeeded. But Solaris 11: 2.a) jdk8u build was not successful. and also jdk8u has a script that checks for c/c++ compiler whether its solaris studio. Its not accepting if we give --with-tools-dir as developer sutio 12.4/12.5 or 12.6 saying its not solaris studio. But i modified the script to accept these versions and able to proceed build but many compilation errors am getting. For that i've posted in different thread but not getting any replies. So i just want to know whether it can be done or not instead of banging my head. If any one tried building jdk8u from openjdk in Solaris 11, Please help me.
Yes, compiling on Solaris 10 and running on Solaris 11 should almost certainly work. Sun and now Oracle have always provided significant compatibility guarantees with Solaris - binaries compiled on an earlier version of Solaris are guaranteed to work on later versions if certain conditions are met.
Per the Oracle Solaris Guarantee Program (bolded text mine):
If you're running a supported copy of Solaris, if your application meets the criteria above but fails to run on a later version of Solaris, Oracle will treat that as a bug in Solaris. Note that Solaris 2.6 was released in 1997. If you have a binary built then, Oracle guarantees that it will still run on Solaris 11 today.
I haven't run
appcert
against the OpenJDK code base, so whether or not OpenJDK would fall under the above guarantees is unknown, but in my experience I have never seen any application compiled on Solaris 10 that failed on Solaris 11.For the sake of comparision, here's the Red Hat Enterprise Linux 7 compatibility guide: https://access.redhat.com/articles/rhel-abi-compatibility Note that Red Hat doesn't even guarantee that they won't do things like change the LDAP API within a release.