WSLを使ってWindows版のOpenJDKをビルドできるということだったので、ずっと試してた。
Windows Subsystem for Linux を使って OpenJDK をビルド - #chiroito ’s blog
けど、configureでcがコンパイルできるか試すところで止まってしまう。
config.logを見ると、どうも
c1: fatal error C1356: mspdbcore.dll を見つけることができません
というエラーが出ている。
VC++のbin/Hostx86/x64/cl.exeというのを使っているのだけど、Hostx86/x64にはmspdbcore.dllがない。一方でHostx86/x86やHostx64/x64にはmspdbcore.dllがあって、コマンドラインで試したところこちらではコンパイルが通る。
ということで、強制的にHostx64/x64のほうのcl.exeを使うようにしてみたらビルドが通った。
$ export CC=/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe $ export CXX=/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe $ bash configure --with-boot-jdk=/mnt/c/Users/naoki/java/jdk/jdk-13.0.1 --disable-hotspot-gtest $ make images
無事recordもうごいてる