Hmm, I get the rc.exe error as well, but now it is much later down
the line... Still investigating...
Thanks,
-Andrew
-----Original Message-----
From: Andrew Luo
Sent: Friday, December 14, 2018 12:34 PM
To: 'Andrew Luo' <andrewluotechnolog...@outlook.com>; Magnus Ihse
Bursie <magnus.ihse.bur...@oracle.com>; Erik Joelsson
<erik.joels...@oracle.com>
Cc: build-dev@openjdk.java.net
Subject: RE: [PATCH] Support for building using WSL (Windows
Subsystem for Linux) on Windows
Try this updated patch with some fixes...
Thanks,
-Andrew
-----Original Message-----
From: build-dev <build-dev-boun...@openjdk.java.net> On Behalf Of
Andrew Luo
Sent: Friday, December 14, 2018 12:01 PM
To: Magnus Ihse Bursie <magnus.ihse.bur...@oracle.com>; Erik
Joelsson <erik.joels...@oracle.com>
Cc: build-dev@openjdk.java.net
Subject: RE: [PATCH] Support for building using WSL (Windows
Subsystem for Linux) on Windows
I think I have a fix for it. Give me a minute (or a few hours
depending on if it works).
Thanks,
-Andrew
-----Original Message-----
From: Magnus Ihse Bursie <magnus.ihse.bur...@oracle.com>
Sent: Friday, December 14, 2018 11:42 AM
To: Erik Joelsson <erik.joels...@oracle.com>
Cc: Andrew Luo <andrewluotechnolog...@outlook.com>;
build-dev@openjdk.java.net
Subject: Re: [PATCH] Support for building using WSL (Windows
Subsystem for Linux) on Windows
14 dec. 2018 kl. 20:31 skrev Erik Joelsson <erik.joels...@oracle.com>:
On 2018-12-14 11:05, Magnus Ihse Bursie wrote:
On 2018-12-14 19:41, Erik Joelsson wrote:
On 2018-12-14 10:28, Magnus Ihse Bursie wrote:
On 2018-12-14 19:23, Erik Joelsson wrote:
Hello,
I took your patch for a spin, and configure passes, but I get
the same build error I got with my patch:
fatal error C1083: Cannot open compiler intermediate file:
'd:\erik\jdk-wsl\build\windows-x86_64-server-release\hotspot\varia
nt-server\libjvm\objs\build_libjvm.pch': No such file or directory
This is repeated for every C++ file in Hotspot. I see two
issues here. First of all, I need to figure out why the
compiler will not find the file, which is clearly there.
Second, why isn't this failure picked up by make? Somewhere the
return value of cl.exe is disappearing.
Can you build without errors if you disable PCH?
Could you? That is, is it only the PCH that is problematic?
Trying that now.
Also, a wild guess: can it be related to file permissions? Can
you read the file properly from both WSL and Windows?
It is readable, but it could be something with case. The file is
actually called BUILD_LIBJVM.pch, but that is also how it's given
to the compiler command line. Here is the output from DEBUG_FIXPATH:
Weird. What if you, after a failed build, rename it to
build_libjvm.pch?
Doing that causes a new error:
d:\erik\jdk-wsl\open\src\hotspot\share\gc\shared\accessBarrierSupport.
cpp : fatal error C1382: the PCH file
'd:\erik\jdk-wsl\build\windows-x86_64-server-release\hotspot\variant-s
erver\libjvm\objs\build_libjvm.pch' has been rebuilt since
'd:\erik\jdk-wsl\build\windows-x86_64-server-release\hotspot\variant-s
erver\libjvm\objs\accessBarrierSupport.obj' was generated. Please
rebuild this object
But I think even more important is that make is not getting the
error. The build just continues until interrupted.
Agree, that's bad.
Does fixpath_debug print exit code? If so, what does it say? If not,
we should add that instrumentation.
/Magnus
Compiling ad_x86_expand.cpp (for jvm.dll) fixpath input line
-wsl\build\windows-x86_64-server-release\configure-support\bin\fixp
ath.exe -w
This starts out quite odd..? -wsl\build\...?
I agree, didn't look into that part.
/mnt/c/PROGRA~2/MICROS~1/2017/PROFES~1/VC/Tools/MSVC/1416~1.270/bin/
Hostx86/x64/cl.exe
Also, FWIW, this seems not to have been properly case treated.
Which version of the patch are you using?
The last one posted by Andrew: "diff15.txt".
/Erik
/Magnus
-showIncludes
-Fp/mnt/d/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/v
ariant-server/libjvm/objs/BUILD_LIBJVM.pch -Yuprecompiled.hpp
-D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
-D__STDC_CONSTANT_MACROS -DNOMINMAX -DWIN32_LEAN_AND_MEAN -nologo
-MD -MP -D_WINDOWS -DWIN32 -D_JNI_IMPLEMENTATION_ -W3
-DVM_LITTLE_ENDIAN -D_LP64=1 -DPRODUCT -DTARGET_ARCH_x86
-DINCLUDE_SUFFIX_OS=_windows -DINCLUDE_SUFFIX_CPU=_x86
-DINCLUDE_SUFFIX_COMPILER=_visCPP -DTARGET_COMPILER_visCPP -DAMD64
"-DHOTSPOT_LIB_ARCH=\"amd64\"" -DCOMPILER1 -DCOMPILER2
-DINCLUDE_ZGC=0
-I/mnt/d/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/va
riant-server/gensrc/adfiles
-I/mnt/d/erik/jdk-wsl/closed/src/hotspot/share
-I/mnt/d/erik/jdk-wsl/open/src/hotspot/share
-I/mnt/d/erik/jdk-wsl/open/src/hotspot/os/windows
-I/mnt/d/erik/jdk-wsl/open/src/hotspot/cpu/x86
-I/mnt/d/erik/jdk-wsl/open/src/hotspot/os_cpu/windows_x86
-I/mnt/d/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/va
riant-server/gensrc
-I/mnt/d/erik/jdk-wsl/open/src/hotspot/share/precompiled
-I/mnt/d/erik/jdk-wsl/open/src/hotspot/share/include
-I/mnt/d/erik/jdk-wsl/open/src/hotspot/os/windows/include
-I/mnt/d/erik/jdk-wsl/build/windows-x86_64-server-release/support/mo
dules_include/java.base
-I/mnt/d/erik/jdk-wsl/build/windows-x86_64-server-release/support/mo
dules_include/java.base/win32
-I/mnt/d/erik/jdk-wsl/open/src/java.base/share/native/libjimage -Z7
-d2Zi+ -wd4800 -WX
-I/mnt/c/PROGRA~2/MICROS~1/2017/PROFES~1/VC/Tools/MSVC/1416~1.270/at
lmfc/include
-I/mnt/c/PROGRA~2/MICROS~1/2017/PROFES~1/VC/Tools/MSVC/1416~1.270/in
clude -I/mnt/c/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/ucrt
-I/mnt/c/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/shared
-I/mnt/c/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/um
-I/mnt/c/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/winrt
-I/mnt/c/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/cppwinrt -O2 -Oy-
"-DTHIS_FILE=\"\"" -c
-Fo/mnt/d/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/v
ariant-server/libjvm/objs/ad_x86_expand.obj
/mnt/d/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/vari
ant-server/gensrc/adfiles/ad_x86_expand.cpp<
fixpath using wsl mode, with path list:
fixpath converted line
c:/PROGRA~2/MICROS~1/2017/PROFES~1/VC/Tools/MSVC/1416~1.270/bin/Hos
tx86/x64/cl.exe -showIncludes
-Fpd:/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/varia
nt-server/libjvm/objs/BUILD_LIBJVM.pch -Yuprecompiled.hpp
-D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
-D__STDC_CONSTANT_MACROS -DNOMINMAX -DWIN32_LEAN_AND_MEAN -nologo
-MD -MP -D_WINDOWS -DWIN32 -D_JNI_IMPLEMENTATION_ -W3
-DVM_LITTLE_ENDIAN -D_LP64=1 -DPRODUCT -DTARGET_ARCH_x86
-DINCLUDE_SUFFIX_OS=_windows -DINCLUDE_SUFFIX_CPU=_x86
-DINCLUDE_SUFFIX_COMPILER=_visCPP -DTARGET_COMPILER_visCPP -DAMD64
"-DHOTSPOT_LIB_ARCH=\"amd64\"" -DCOMPILER1 -DCOMPILER2
-DINCLUDE_ZGC=0
-Id:/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/varian
t-server/gensrc/adfiles -Id:/erik/jdk-wsl/closed/src/hotspot/share
-Id:/erik/jdk-wsl/open/src/hotspot/share
-Id:/erik/jdk-wsl/open/src/hotspot/os/windows
-Id:/erik/jdk-wsl/open/src/hotspot/cpu/x86
-Id:/erik/jdk-wsl/open/src/hotspot/os_cpu/windows_x86
-Id:/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/varian
t-server/gensrc -Id:/erik/jdk-wsl/open/src/hotspot/share/precompiled
-Id:/erik/jdk-wsl/open/src/hotspot/share/include
-Id:/erik/jdk-wsl/open/src/hotspot/os/windows/include
-Id:/erik/jdk-wsl/build/windows-x86_64-server-release/support/module
s_include/java.base
-Id:/erik/jdk-wsl/build/windows-x86_64-server-release/support/module
s_include/java.base/win32
-Id:/erik/jdk-wsl/open/src/java.base/share/native/libjimage -Z7
-d2Zi+ -wd4800 -WX
-Ic:/PROGRA~2/MICROS~1/2017/PROFES~1/VC/Tools/MSVC/1416~1.270/atlmfc
/include
-Ic:/PROGRA~2/MICROS~1/2017/PROFES~1/VC/Tools/MSVC/1416~1.270/includ
e -Ic:/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/ucrt
-Ic:/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/shared
-Ic:/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/um
-Ic:/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/winrt
-Ic:/PROGRA~2/WI3CF2~1/10/Include/100177~1.0/cppwinrt -O2 -Oy-
"-DTHIS_FILE=\"\"" -c
-Fod:/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/varia
nt-server/libjvm/objs/ad_x86_expand.obj
d:/erik/jdk-wsl/build/windows-x86_64-server-release/hotspot/variant-
server/gensrc/adfiles/ad_x86_expand.cpp<
An interesting note is that make is rebuilding the pch file on
every invocation so it too has trouble finding the file.
/Erik