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 >>
ÿþd i f f - r 4 b e f 1 9 5 7 a 1 d 8 m a k e / I m a g e s . g m k - - - a / m a k e / I m a g e s . g m k T h u N o v 2 2 1 0 : 1 5 : 3 2 2 0 1 8 - 0 8 0 0 + + + b / m a k e / I m a g e s . g m k F r i D e c 1 4 1 2 : 3 1 : 4 3 2 0 1 8 - 0 8 0 0 @ @ - 9 9 , 7 + 9 9 , 7 @ @ ) i f e q ( $ ( B U I L D _ C D S _ A R C H I V E ) , t r u e ) $ ( c a l l L o g W a r n , C r e a t i n g C D S a r c h i v e f o r j d k i m a g e ) - $ ( J D K _ I M A G E _ D I R ) / b i n / j a v a - X s h a r e : d u m p - X m x 1 2 8 M - X m s 1 2 8 M $ ( L O G _ I N F O ) + $ ( J D K _ I M A G E _ D I R ) / b i n / j a v a $ ( E X E _ S U F F I X ) - X s h a r e : d u m p - X m x 1 2 8 M - X m s 1 2 8 M $ ( L O G _ I N F O ) e n d i f $ ( T O U C H ) $ @ @ @ - 1 1 4 , 7 + 1 1 4 , 7 @ @ ) i f e q ( $ ( B U I L D _ C D S _ A R C H I V E ) , t r u e ) $ ( c a l l L o g W a r n , C r e a t i n g C D S a r c h i v e f o r j r e i m a g e ) - $ ( J R E _ I M A G E _ D I R ) / b i n / j a v a - X s h a r e : d u m p - X m x 1 2 8 M - X m s 1 2 8 M $ ( L O G _ I N F O ) + $ ( J R E _ I M A G E _ D I R ) / b i n / j a v a $ ( E X E _ S U F F I X ) - X s h a r e : d u m p - X m x 1 2 8 M - X m s 1 2 8 M $ ( L O G _ I N F O ) e n d i f $ ( T O U C H ) $ @ d i f f - r 4 b e f 1 9 5 7 a 1 d 8 m a k e / a u t o c o n f / b a s i c s . m 4 - - - a / m a k e / a u t o c o n f / b a s i c s . m 4 T h u N o v 2 2 1 0 : 1 5 : 3 2 2 0 1 8 - 0 8 0 0 + + + b / m a k e / a u t o c o n f / b a s i c s . m 4 F r i D e c 1 4 1 2 : 3 1 : 4 3 2 0 1 8 - 0 8 0 0 @ @ - 2 2 3 , 6 + 2 2 3 , 8 @ @ B A S I C _ F I X U P _ P A T H _ C Y G W I N ( $ 1 ) e l i f t e s t "