欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

windows10上编译openjdk12

程序员文章站 2022-03-22 15:31:15
...

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我把操作系统语言和区域全改成了英文。