簡體   English   中英

來自openjdk的jdk8u是否支持solaris 11?

[英]jdk8u from openjdk for solaris 11 support there or not?

以下是我想知道答案的問題清單:

  1. 在 Solaris 10 中從 openjdk 源構建的 jdk8u 可以用於 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

AdoptOpenJDK 等一些供應商為 Solaris 10 和 11 提供了相同的 JDK 和 JRE 二進制文件。我是否也可以在 Solaris 10 中為 Solaris 11 使用相同的 jdk 構建?

  1. 我們可以為 Solaris 11 x86 構建 jdk8u。 來自 openjdk 的 Jdk8u 源代碼檢查先決條件,以及 Solaris Studio 12.1 到 12.4 的 CC 和 C++ 編譯器。 但是 Solaris 11 支持 Solaris studio 12.4(開發者工作室)以上的版本。 任何人都嘗試過從 http://hg.openjdk.java.net/jdk8u/jdk8u/構建它。

我確實試了幾次。 我已經嘗試在 Solaris 10 中構建並且成功了。 但是 Solaris 11: 2.a) jdk8u 構建不成功。 jdk8u 也有一個腳本來檢查 c/c++ 編譯器是否是它的 solaris studio。 如果我們將 --with-tools-dir 作為開發人員 sutio 12.4/12.5 或 12.6 說它不是 solaris studio,則它不接受。 但是我修改了腳本以接受這些版本並能夠繼續構建,但出現了許多編譯錯誤。 為此,我在不同的線程中發布了但沒有得到任何回復。 所以我只想知道它是否可以完成,而不是敲我的頭。 如果有人嘗試在 Solaris 11 中從 openjdk 構建 jdk8u,請幫助我。

是的,在 Solaris 10 上編譯並在 Solaris 11 上運行幾乎肯定可以工作。 Sun 和現在的 Oracle 始終提供與 Solaris 的重要兼容性保證——如果滿足某些條件,則保證在早期版本的 Solaris 上編譯的二進制文件可以在更高版本上運行。

根據Oracle Solaris 保證計划(我的粗體文本):

Oracle Solaris 的設計和測試旨在保護客戶對軟件的投資。

雖然新版本中可能會引入新功能,但 Oracle Solaris 的設計具有二進制接口的連續性,因此在早期版本上開發的應用程序可以繼續運行。 這使客戶能夠購買新系統或升級舊系統上的操作系統並繼續運行他們現有的應用程序。

購買了 Oracle Premier Support for Operating Systems 的客戶和合作伙伴可以在解決從早期操作系統版本移動二進制應用程序時發現的兼容性問題方面獲得幫助。

對於開發人員,操作系統提供了與架構無關的 API,這意味着在 SPARC 架構上開發的程序可以重新編譯以在 x86 上運行,反之亦然

有關二進制和源保證的更多詳細信息,請參見下文。

Oracle Solaris 二進制應用保證

Oracle Solaris 二進制應用程序保證反映了 Oracle 對從 Oracle Solaris 一個版本到下一個版本的應用程序兼容性的信心,旨在使重新認證成為過去。

Oracle Solaris 版本之間的二進制兼容性有助於保護您在應用程序開發、培訓和維護方面的長期投資:

在 Solaris 2.6 或更高版本上構建的二進制應用程序,它使用穩定性中定義的操作系統接口。5 在 Oracle Solaris 的后續版本上運行,包括它們的初始版本和所有更新,即使應用程序尚未針對這些最新版本重新編譯.

如果應用程序在您最新支持的 Oracle Solaris 操作系統上運行時遇到兼容性問題,則提供如下所述的支持:

對於 Oracle Solaris 10

使用集成的“appcert”實用程序(請參閱 appcert 的手冊頁)來檢查您的應用程序。 如果未報告錯誤但運行應用程序的問題仍然存在,則應打開服務請求 (SR) 以獲得支持。

如果您正在運行受支持的 Solaris 副本,如果您的應用程序符合上述標准但無法在更高版本的 Solaris 上運行, Oracle 會將其視為 Solaris 中的錯誤。 請注意,Solaris 2.6 於 1997 年發布。如果您當時構建了二進制文件,Oracle 保證它今天仍然可以在 Solaris 11 上運行。

我沒有針對 OpenJDK 代碼庫運行appcert ,因此 OpenJDK 是否屬於上述保證尚不得而知,但根據我的經驗,我從未見過任何在 Solaris 10 上編譯但在 Solaris 11 上失敗的應用程序。

為了比較,這里是 Red Hat Enterprise Linux 7 兼容性指南https://access.redhat.com/articles/rhel-abi-compatibility請注意,Red Hat 甚至不保證他們不會做類似的事情在一個版本中更改 LDAP API 。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM