国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

Ubuntu如何輕松編譯openJDK詳解

2024-09-01 13:55:06
字體:
來源:轉載
供稿:網友

前言

花了三天在windows上搞openJDK,對bash本來就不熟,加上各種莫名依賴和腳本里的bug,身心俱疲。最后make all的時候產生一個莫名其妙的錯誤說什么有warning且-Werror置為了true,死活沒google到-Werror是什么鬼,只好作罷了。

今天本菜鳥突然想起來,朕還有Ubuntu虛擬機,權且一試,沒想到輕松成功。

平臺:Ubuntu Version 5.1.30 (3.2.0-98-generic-pae #138-Ubuntu SMP Mon Jan 11 13:11:12 UTC 2016 i686 i686 i386 GNU/Linux)

步驟1:(按照《深入理解Java虛擬機》中的命令)一鍵下載依賴

sudo apt-get install build-essential gawk m4 libasound2-dev libcups2-dev libxrender-dev xorg-dev xutils-dev x11proto-print-dev binutils libmotif3 libmotif-dev ant

這里寫的不一定全,不過暫且先裝著,后面如果缺少什么依賴可以再按提示安裝,一個佛系程序員的一天就是見招拆招。

openJDK的源代碼有C++也有Java,所以需要一個Bootstrap JDK去編譯Java的部分。這個JDK通常是比你要編譯的openJDK早一個版本的官方JDK,這是官方的README-builds(在第二步中下載下來的源碼根目錄下)說的:

...The general rule is that the bootstrap JDK must be an instance of the previous major release of the JDK.

每一個版本的README-builds中都會指明這一版的openJDK需要的Bootstrap JDK具體版本,比如openJDK8需要的是JDK7u7以上的版本,但不能是JDK8:

Ubuntu,編譯,openJDK

步驟2:下載源碼

sudo hg clone http://hg.openjdk.java.net/jdk8u/jdk8u-dev/cd jdk8u-devchmod 755 get_source.sh./get_source.sh

用mercurial下載jdk8u的最新源碼。小伙伴如果想下載其它版本的源碼可以去這里browse: http://hg.openjdk.java.net/。這個下載過程大約三十分鐘。

如果不想用mercurial,也可以在這里下載zip包:http://jdk.java.net/java-se-ri/8 (在網頁偏下方RI source code那里):

Ubuntu,編譯,openJDK

我在windows上編譯是就是用這個zip包解壓編譯的,最后失敗了。出于迷信心理,在Ubuntu上我還是決定用mercurial下載,各路大神盡可不必理會。

步驟3:設置環境變量新建一個setup.sh,把以下的內容拷貝進去:

export LANG=C#BootStrap-JDK的安裝路徑,替換為自己bootstrap-JDK的路徑export ALT_BOOTDIR=/usr/lib/jvm/java-7-oracle-1.7.0.80 export ALLOW_DOWNLOADS=trueexport HOTSPOT_BUILD_JOBS=8export SKIP_COMPARE_IMAGES=true#要編譯的內容,讀者可以根據需要自行選擇export BUILD_LANGTOOLS=true#export BUILD_JAXWS=false#export BUILD_JAXP=false#export BUILD_CORBA=falseexport BUILD_HOTSPOT=trueexport BUILD_JDK=trueexport SKIP_COMPARE_IMAGES=trueBUILD_DEPLOY=falseBUILD_INSTALL=false#編譯結果存放的路徑,建議存放在openjdk源碼中build文件夾export ALT_OUTPUTDIR=/usr/dev/jvm/openjdk/build#這兩個環境變量需要去掉,不然會出問題unset JAVA_HOMEunset CLASSPATH

運行

./setup.sh

設置一遍就好。

步驟4:進行編譯

到下好的openJDK源碼的根目錄下運行make,大概需要二三十分鐘。本來是應該運行make sanity的,但是我又碰到了這個錯誤……

Ubuntu,編譯,openJDK

媽喲什么鬼,搜了一會無甚結果,于是雞賊的跳過了這一步直接運行make,竟然成功了,成功后的輸出長這樣:

Ubuntu,編譯,openJDK

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台山市| 大渡口区| 社旗县| 江油市| 自贡市| 林甸县| 重庆市| 普安县| 双桥区| 玛曲县| 黑水县| 新昌县| 额济纳旗| 山东| 荥经县| 九寨沟县| 德惠市| 顺平县| 新龙县| 栾城县| 浮山县| 宜春市| 南华县| 舟曲县| 托克逊县| 云和县| 黄大仙区| 琼中| 沙湾县| 册亨县| 香河县| 十堰市| 朝阳县| 宁津县| 怀柔区| 洛浦县| 读书| 孝义市| 福贡县| 临清市| 中阳县|