天天看點

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

系列文章:

1、Mac10.14下使用Xcode10編譯調試OpenJDK8最新教程(附源碼)

2、最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)

3、Mac10.14下使用Clion調試OpenJDK8最新教程(附源碼)

一、前言

在前面一篇文章Mac10.14下使用Xcode10編譯調試OpenJDK8最新教程(附源碼)中咱們詳細講解了如何使用Mac對OpenJDK8的源碼進行編譯和調試。但是看過的同學都可能都覺得這過程太複雜了,涉及到好多檔案的修改。稍不注意就會因為改錯導緻編譯失敗,然後有得不斷的修改嘗試。為了讓大家能夠快速的對OpenJDK8的源碼進行編譯。我特意整理了下源碼,将需要修改的地方提前修改好,将一些操作整理成簡單的腳本,并分享給大家。這樣友善大家對源碼編譯,減少大家出錯的機率。

下面就給大家講解下如何使用使用樓主提供的源碼對OpenJDK進行編譯。

二、源碼擷取

源碼擷取方式:請關注文章末尾的微信公衆号“lifeofcoder”,并回複"jdk"即可擷取源檔案路徑。

三、使用方式

1、相關軟體安裝

A、安裝編譯軟體

首先需要需要參考文章“Mac10.14下使用Xcode10編譯調試OpenJDK8最新教程(附源碼)”中的“2.1環境說明”和“2.2章節軟體安裝”準備安裝所需,并進行配置,并確定Xcode版本和Command_Line_Tools的版本與樓主一緻(不一緻後續出現的問題可能不一樣,特别是不要跨大版本。比如樓主使用10.3,你最好不要使用9+或者11+的版本)。

另外參考文章“Mac10.14下使用Xcode10編譯調試OpenJDK8最新教程(附源碼)”中

B、安裝compiledb

這一步在很多網上指導都沒有。其實這一步的操作的原因是為了解決編譯導入Clion之後,很多頭檔案找不到的問題。即在編譯器中,頭檔案夾都報紅。安裝compiledb貌似也可以通過修改頭檔案的方式解決,但是我嘗試了操作下。貌似不行。最後還是不得不安裝compiledb,這樣簡單省事。

安裝要求:需要python3+。如果python是2+的,可以通過指令brew install python3來安裝python3。

然後需要安裝pip,安裝指令為:curl https://bootstrap.pypa.io/get-pip.py | python3

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

最後通過pip安裝compiledb即可,指令為:pip install compiledb

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

C、安裝-lstdc++依賴庫

克隆一個工具:git clone https://github.com/quantum6/xcode-missing-libstdcpp(注意:該檔案的内容會軟連接配接到Xcode中,是以該目錄不能删除)

然後進入該工具執行sh install.sh

2、源碼編譯

克隆源碼到本地之後,直接在源碼根目錄,執行sh envsetup.sh,執行結果如下:

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

然後執行sh config.sh:

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

執行成功後有如下日志:

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

最後執行sh compile.sh對源碼進行編譯,編譯完成後會列印如下日志。

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

這個過程需要花費的時間比較長,如果不出意外最終會列印如下日志,即表示編譯成功。

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

在編譯後有可能在最後有大量的No such file or directory的警告。這大家不用擔心,隻要向前看日志,能夠看到上述的編譯成功日志即表示編譯成功了。

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

最後我們通過指令驗證一下咱們自己編譯出來的JDK是否可用,咱們通過指令看下java的版本号,即執行指令:java -version,如下,如果能夠正常列印出版本号,即表示編譯完全OK了。

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

3、源碼調試

調試請參考文章“Mac10.14下使用Clion調試OpenJDK8最新教程(附源碼)”。

四、慣例

如果你對本文有任何疑問或者高見,歡迎添加公衆号lifeofcoder共同交流探讨(添加公衆号可以獲得樓主最新博文推送以及”Java進階架構“上10G視訊和圖文資料哦)。

最新Mac版本OpenJDK8編譯調試源碼下載下傳(直接使用無需修改,簡單友善)系列文章:一、前言二、源碼擷取三、使用方式四、慣例

繼續閱讀