题外话
最近在阅读《深入理解Java虚拟机》,其中有一小节实战是自己编译JDK,实际操作下来后遇到问题不少,为此特地记录,也希望可以给大家带来一些参考!
前置准备
平台及工具:Windows 10 + WSL(ubuntu 20.04) + CLion(2021.2.2)
OpenJDK12下载地址:https://hg.openjdk.java.net/jdk/jdk12/
- 下载安装解压即可
编译工具版本推荐:
-
GCC 7.4及以上
# Ubuntu上安装GCC命令,该命令默认安装9.3版本(2021年) sudo apt-get install build-essential
编译依赖库:
工具 | 库名称 | 安装命令 |
---|---|---|
FreeType | The FreeType Project | sudo apt-get install libfreetype6-dev |
CUPS | Common UNIX Printing System | sudo apt-get install libcups2-dev |
X11 | X Window System | sudo apt-get install libx11-dev libxext-dev libxrender-dev libxrandr-dev libxtst-dev libxt-dev |
ALSA | Advanced Linux Sound Architecture | sudo apt-get install libasound2-dev |
libffi | Portable Foreign Function Interface Library | sudo apt-get install libffi-dev |
Autoconf | Extensible Package of M4 Macros | sudo apt-get install autoconf |
Bootstrap JDK 准备:
-
OpenJDK11
sudo apt-get install openjdk-11-jdk
开始编译
编译FastDebug版,仅含Server模式的HotSpot虚拟机命令:
bash configure --enable-debug --with-jvm-variants=server
# 嫌写那么多麻烦,直接用下面这个