windows10上编译openjdk12
1. 安装cygwin64 下载地址: https://cygwin.com/setup-x86_64.exe
至少需要安装 autoconf,zip,unzip,make, tar
2. 安装好JDK11如:
D:/opt/jdk11
3. 安装英文版 vs2017 community 版
一定要英文版,否则需要你改半天 common/autoconf/generated-configure.sh 文件
4. 下载open JDK 12 源码(也可以下载zip包解压)
$hg clone http://hg.openjdk.java.net/jdk/jdk12 src
我把源码放在D:/jdk12/src 目录
5. 修改脚本 make\autoconf\toolchain_windows.m4 文件696行(由于某些windows目录包含空格及括号)
修改前:
if test -z "$(ls -d "$with_ucrt_dll_dir/*.dll" 2> /dev/null)"; then修改后:
if test -z "$(ls -d "$with_ucrt_dll_dir"/*.dll 2> /dev/null)"; then
6. 运行configure
打开 cygwin64
$ cd /cygdrive/d/jdk12/src/
配置检查环境
$ bash ./configure --with-target-bits=64 --disable-warnings-as-errors --with-ucrt-dll-dir="/cygdrive/c/Program Files (x86)/Windows Kits/10/Redist/10.0.17763.0/ucrt/DLLs/x64" --with-boot-jdk=/cygdrive/d/opt/jdk11
7. $make all
8. 测试
$ ./build/windows-x86_64-normal-server-release/images/jdk/bin/java -version
openjdk version "12-internal" 2019-03-19
OpenJDK Runtime Environment (build 12-internal+0-adhoc..src)
OpenJDK 64-Bit Server VM (build 12-internal+0-adhoc..src, mixed mode, sharing)
补充:
a.vs2010-vs2017一定要英文版的,除非你非常熟悉 bash 并愿意改配置脚本。
b./cygdrive/c/Program Files (x86)/Windows Kits/10/Redist/10.0.17763.0/ucrt/DLLs/x64 这个目录可能
不同的电脑不一样,按照规则自己找。
c. 为编译jdk我把操作系统语言和区域全改成了英文。
上一篇: linux查找文件命令find怎么用
下一篇: linux怎么安装unzip
推荐阅读