Make sure all visual studio and related processes running in that directory
are terminated. If you have trouble you might restart windows in safe mode.

Also for configure/make, never pass paths with spaces, always use short
name to avoid space, use /cygdrive/c/..., and never pass backslashes. That
fixes a lot of bugs.

On Mon, Jul 1, 2024, 8:55 PM Anil <1dropafl...@gmail.com> wrote:

> Thank you for your reply.
> I ran the Visual Studio Setup and installed both Build Tools 2019, and
> also Visual Studio 2022.
> I enabled the checkboxes in *both* for Desktop Development with C++.
>
> I tried it but failed. I opened Administrator window in both Powershell
> and CMD but both gave "Access is denied"
>
> PS C:\WINDOWS\system32> cd 'C:\Program Files\'
> PS C:\Program Files> fsutil file setshortname "Microsoft Visual Studio"
> MICROS~3
> Error:  Access is denied.
> PS C:\Program Files>
>
> Someone else suggested
> $ bash configure --enable-debug --with-toolchain-path="C:\\Program
> Files\\Microsoft Visual
> Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.40.33807\\bin\\Hostx64\\x64"
> --with-toolchain-version=2022
> and also without
> $ bash configure --enable-debug --with-toolchain-path="C:\\Program
> Files\\Microsoft Visual
> Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.40.33807\\bin\\Hostx64\\x64"
> and also with 2019
> $ bash configure --enable-debug --with-toolchain-path="C:\\Program
> Files\\Microsoft Visual
> Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.40.33807\\bin\\Hostx64\\x64"
> --with-toolchain-version=2019
>
> all give error:
>
> configure: Using default toolchain microsoft (Microsoft Visual Studio)
> configure: error: Cannot locate a valid Visual Studio installation
> configure exiting with result code 1
>
>
>
>
> On Mon, Jul 1, 2024 at 7:53 PM Chen Liang <liangchenb...@gmail.com> wrote:
>
>> Hi Anil,
>> I will share how I set up Visual Studio 2022 (2019 is a bit old now) for
>> building JDK.
>> First, I go to https://visualstudio.microsoft.com to download the visual
>> studio setup (which installs an installer)
>> Once in the installer, go to visual studio, and select "Desktop
>> Development with C++" which will install everything you need.
>>
>> In your "C:\Program Files" (or C:\PROGRA~1) open administrator powershell
>> (you can do it by right-clicking on win start menu icon) run:
>> fsutil file setshortname "Microsoft Visual Studio" MICROS~3
>> This is the only directory that really need short path; the rest of the
>> path to cl already has no space.
>>
>> And yes, I am using Windows11+cygwin to build openjdk. I think you
>> already have 8dot3name enabled so you can see PROGRA~1, you shouldn't be
>> far.
>>
>> On Mon, Jul 1, 2024 at 2:31 PM Anil <1dropafl...@gmail.com> wrote:
>>
>>> [Erik] " You could try enabling 8dot3name on the whole volume (C:) using
>>> fsutil [1],  "
>>> I don't know what this means and the side effects. I don't want to try
>>> this on the entire C:
>>> There must be people using Windows11 and Cygwin64 who have gotten
>>> OpenJDK to build?
>>>
>>> On Mon, Jul 1, 2024 at 1:59 AM <erik.joels...@oracle.com> wrote:
>>>
>>>> Hello Anil,
>>>> On 6/30/24 12:50, Anil wrote:
>>>>
>>>> I went into the VC.../bin directory to get the actual path and tried
>>>> again, but it failed.
>>>>
>>>> $ bash configure --with-boot-jdk=/c/Users/Anil/OpenJDK/jdk-22.0.1
>>>> --enable-debug --with-tools-dir="C:\PROGRA~2\Microsoft Visual
>>>> Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\bin"
>>>>
>>>> The OpenJDK build cannot handle paths with spaces in them, and on
>>>> Windows, where the default installation directories of things like Visual
>>>> Studio and the SDK have spaces in the directory names, we rely on short
>>>> paths to work around this. If you installed Visual Studio in the default
>>>> location, you should not need to point to a tools dir, and doing so won't
>>>> help if the paths can't be expressed without spaces in them. It's annoying
>>>> that Windows seems to have turned off short path generation by default in
>>>> later versions.
>>>>
>>>> You could try enabling 8dot3name on the whole volume (C:) using fsutil
>>>> [1], but you probably need to reinstall Visual Studio after that to get the
>>>> short path names generated for all the directories in the installation.
>>>>
>>>> /Erik
>>>>
>>>> [1]
>>>> https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/fsutil-8dot3name
>>>>
>>>> configure: Using default toolchain microsoft (Microsoft Visual Studio)
>>>> configure: The path given by --with-tools-dir does not contain a valid
>>>> configure: Visual Studio installation. Please point to the VC/bin or
>>>> VC/bin/amd64
>>>> configure: directory within the Visual Studio installation
>>>> configure: error: Cannot locate a valid Visual Studio installation
>>>> configure exiting with result code 1
>>>>
>>>>
>>>> On Sun, Jun 30, 2024 at 2:07 PM Anil <1dropafl...@gmail.com> wrote:
>>>>
>>>>> Thank you for your reply.
>>>>> I tried without those flags and got the same error message
>>>>> $ bash configure --with-boot-jdk=/c/Users/Anil/OpenJDK/jdk-22.0.1
>>>>> ...
>>>>> configure: Using default toolchain microsoft (Microsoft Visual Studio)
>>>>> configure: error: Cannot locate a valid Visual Studio installation
>>>>> configure exiting with result code 1
>>>>>
>>>>> checking the shortnames.
>>>>>
>>>>> C:\>dir /x
>>>>> Directory of C:\
>>>>> 06/29/2024  09:43 PM    <DIR>          PROGRA~1     Program Files
>>>>> 03/01/2024  06:34 PM    <DIR>          PROGRA~2     Program Files (x86)
>>>>>
>>>>> Directory of C:\PROGRA~1
>>>>> C:\PROGRA~1>dir /x
>>>>> 06/29/2024  09:43 PM    <DIR>                       Microsoft Visual
>>>>> Studio
>>>>>
>>>>> Directory of C:\PROGRA~2
>>>>> C:\PROGRA~2>dir /x
>>>>> 06/29/2024  09:41 PM    <DIR>          Microsoft Visual Studio
>>>>>
>>>>> I don't see any shortnames set.
>>>>>
>>>>> In the Visual Studio Installer, both Visual Studio Build Tools 2019
>>>>> and Visual Studio Community are set.
>>>>> When I click on the Build Tools, I see the checkbox for Desktop C++ is
>>>>> checked.
>>>>>
>>>>>
>>>>> I saw that the C++
>>>>>
>>>>>
>>>>>
>>>>> On Sun, Jun 30, 2024 at 1:24 PM Chen Liang <liangchenb...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Usually Microsoft Visual Studio c compiler (as installed by Visual
>>>>>> Studio installer) already has short names set. It seems the short name 
>>>>>> has
>>>>>> to be 8 characters in length and you can't set it when some process is
>>>>>> running in that directory. You can check the short path in Windows
>>>>>> cmd's "dir /x" command. And try configure without 
>>>>>> --with-toolchain-version
>>>>>> and --with-tools-dir and only set these flags if it fails without those
>>>>>> flags: you declare version is 22 but you point to MSVC 2019's directory,
>>>>>> and you should point to the bin directory within the VC directory.
>>>>>>
>>>>>> On Sun, Jun 30, 2024 at 12:57 PM Anil <1dropafl...@gmail.com> wrote:
>>>>>>
>>>>>>> Update:
>>>>>>> I was able to get past the error
>>>>>>> I installed Visual Studio 2022, rebooted, but it still cannot detect
>>>>>>> it.
>>>>>>>
>>>>>>> PS C:\> fsutil file setshortname "Program Files (x86)" PROGRA~1
>>>>>>> Error:  Access is denied.
>>>>>>>
>>>>>>> PS C:\Program Files (x86)> fsutil file setshortname  "Microsoft
>>>>>>> Visual Studio"  Microsoft_Visual_Studio_2019
>>>>>>> Error:  The parameter is incorrect.
>>>>>>>
>>>>>>> $ bash configure --with-boot-jdk=/c/Users/Anil/OpenJDK/jdk-22.0.1
>>>>>>> --with-toolchain-version=2022 --enable-debug 
>>>>>>> --with-tools-dir="C:\Program
>>>>>>> Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC"
>>>>>>>
>>>>>>> configure: Using default toolchain microsoft (Microsoft Visual
>>>>>>> Studio)
>>>>>>> configure: The path given by --with-tools-dir does not contain a
>>>>>>> valid
>>>>>>> configure: Visual Studio installation. Please point to the VC/bin or
>>>>>>> VC/bin/amd64
>>>>>>> configure: directory within the Visual Studio installation
>>>>>>> configure: error: Cannot locate a valid Visual Studio installation
>>>>>>> configure exiting with result code 1
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Jun 28, 2024 at 8:50 PM Anil <1dropafl...@gmail.com> wrote:
>>>>>>>
>>>>>>>> (changed Subject line. was: Is anyone able to build the JDK on
>>>>>>>> Windows using VirtualBox to host Ubuntu?)
>>>>>>>>
>>>>>>>> I downloaded and unzipped openjdk.
>>>>>>>> $ ls
>>>>>>>> jdk  jdk-22.0.1  openjdk-22.0.1_windows-x64_bin.zip
>>>>>>>>
>>>>>>>> but still I get the same error message
>>>>>>>>
>>>>>>>> configure: Could not find a valid Boot JDK. OpenJDK distributions
>>>>>>>>> are available at http://jdk.java.net/.
>>>>>>>>> configure: This might be fixed by explicitly setting
>>>>>>>>> --with-boot-jdk
>>>>>>>>> configure: error: Cannot continue
>>>>>>>>> configure exiting with result code 1
>>>>>>>>
>>>>>>>>
>>>>>>>> I am wondering if I should *not *install the Open JDK in the
>>>>>>>> directory created by Cygwin (/c/Users/Anil/OpenJDK) but install it in 
>>>>>>>> the
>>>>>>>> /cygdrive Windows folders?
>>>>>>>> (I observe that the folder created in Cygwin is not visible
>>>>>>>> outside, in Windows even after rebooting the laptop).
>>>>>>>> Can someone please confirm?
>>>>>>>> thanks,
>>>>>>>> Anil
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Jun 28, 2024 at 6:48 PM Anil <1dropafl...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Thank you. I installed Cygwin on my Windows 11 laptop, and after
>>>>>>>>> overcoming some minor blocks, ran 'bash configure'.
>>>>>>>>> Am I correct in assuming that I also need to have Open JDK
>>>>>>>>> installed, not the Oracle JDK?
>>>>>>>>> I have Java 17 from Oracle installed.
>>>>>>>>>
>>>>>>>>> configure: Found potential Boot JDK using JAVA_HOME
>>>>>>>>> configure: Potential Boot JDK found at
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-17.0.4.1 is); ignoringot(TM) 64-Bit 
>>>>>>>>> Server VM
>>>>>>>>> (build 17.0.4.1+1-LTS-2, mixed mode, sharing)
>>>>>>>>> configure: (Your Boot JDK version must be one of: 22 23 24)
>>>>>>>>> checking for javac...
>>>>>>>>> /cygdrive/c/progra~1/common~1/oracle/java/javapath/javac.exe
>>>>>>>>> checking for java...
>>>>>>>>> /cygdrive/c/progra~1/common~1/oracle/java/javapath/java.exe
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-17.0.4.1)
>>>>>>>>> configure: Potential Boot JDK found at
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-17.0.4.1 is); ignoringot(TM) 64-Bit 
>>>>>>>>> Server VM
>>>>>>>>> (build 17.0.4.1+1-LTS-2, mixed mode, sharing)
>>>>>>>>> configure: (Your Boot JDK version must be one of: 22 23 24)
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-11.0.10)
>>>>>>>>> configure: Potential Boot JDK found at
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-11.0.10 is ); ignoringot(TM) 64-Bit 
>>>>>>>>> Server VM
>>>>>>>>> 18.9 (build 11.0.10+8-LTS-162, mixed mode)
>>>>>>>>> configure: (Your Boot JDK version must be one of: 22 23 24)
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/progra~1/java/javafx-sdk-11.0.2)
>>>>>>>>> configure: Potential Boot JDK found at
>>>>>>>>> /cygdrive/c/progra~1/java/javafx-sdk-11.0.2 did not contain bin/java;
>>>>>>>>> ignoring
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-17.0.4.1)
>>>>>>>>> configure: Potential Boot JDK found at
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-17.0.4.1 is); ignoringot(TM) 64-Bit 
>>>>>>>>> Server VM
>>>>>>>>> (build 17.0.4.1+1-LTS-2, mixed mode, sharing)
>>>>>>>>> configure: (Your Boot JDK version must be one of: 22 23 24)
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-11.0.10)
>>>>>>>>> configure: Potential Boot JDK found at
>>>>>>>>> /cygdrive/c/progra~1/java/jdk-11.0.10 is ); ignoringot(TM) 64-Bit 
>>>>>>>>> Server VM
>>>>>>>>> 18.9 (build 11.0.10+8-LTS-162, mixed mode)
>>>>>>>>> configure: (Your Boot JDK version must be one of: 22 23 24)
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/progra~1/java/javafx-sdk-11.0.2)
>>>>>>>>> configure: Potential Boot JDK found at
>>>>>>>>> /cygdrive/c/progra~1/java/javafx-sdk-11.0.2 did not contain bin/java;
>>>>>>>>> ignoring
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/Program Files/Java/jdk-17.0.4.1)
>>>>>>>>> configure: Potential Boot JDK found at /cygdrive/c/Program
>>>>>>>>> Files/Java/jdk-17.0.4); ignoringot(TM) 64-Bit Server VM (build
>>>>>>>>> 17.0.4.1+1-LTS-2, mixed mode, sharing)
>>>>>>>>> configure: (Your Boot JDK version must be one of: 22 23 24)
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/Program Files/Java/jdk-11.0.10)
>>>>>>>>> configure: Potential Boot JDK found at /cygdrive/c/Program
>>>>>>>>> Files/Java/jdk-11.0.1); ignoringot(TM) 64-Bit Server VM 18.9 (build
>>>>>>>>> 11.0.10+8-LTS-162, mixed mode)
>>>>>>>>> configure: (Your Boot JDK version must be one of: 22 23 24)
>>>>>>>>> configure: Found potential Boot JDK using well-known locations (in
>>>>>>>>> /cygdrive/c/Program Files/Java/javafx-sdk-11.0.2)
>>>>>>>>> configure: Potential Boot JDK found at /cygdrive/c/Program
>>>>>>>>> Files/Java/javafx-sdk-11.0.2 did not contain bin/java; ignoring
>>>>>>>>> configure: Could not find a valid Boot JDK. OpenJDK distributions
>>>>>>>>> are available at http://jdk.java.net/.
>>>>>>>>> configure: This might be fixed by explicitly setting
>>>>>>>>> --with-boot-jdk
>>>>>>>>> configure: error: Cannot continue
>>>>>>>>> configure exiting with result code 1
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Jun 27, 2024 at 9:06 AM <erik.joels...@oracle.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hello Anil,
>>>>>>>>>>
>>>>>>>>>> Building in a VM on a laptop should be doable, but given how
>>>>>>>>>> resource intensive the JDK build is, you could run into problems 
>>>>>>>>>> like you
>>>>>>>>>> describe. You are most likely to get the best build performance 
>>>>>>>>>> running
>>>>>>>>>> natively on the machine and OS you have, so my recommendation is to 
>>>>>>>>>> build
>>>>>>>>>> for Windows in your case. If you still prefer to build for Linux, I 
>>>>>>>>>> think
>>>>>>>>>> the best option is to use WSL. See doc/building.md for instructions 
>>>>>>>>>> on how
>>>>>>>>>> to build for Linux in WSL. To build for Windows, I recommend 
>>>>>>>>>> installing
>>>>>>>>>> Cygwin as the most straightforward and well tested option for a POSIX
>>>>>>>>>> support layer on Windows. Once installed, you won't need to run any 
>>>>>>>>>> Windows
>>>>>>>>>> commands as Cygwin emulates a Linux/Unix environment. Again see
>>>>>>>>>> doc/building.md for instructions on how to install a build 
>>>>>>>>>> environment on
>>>>>>>>>> Windows.
>>>>>>>>>>
>>>>>>>>>> /Erik
>>>>>>>>>> On 6/27/24 04:51, Anil wrote:
>>>>>>>>>>
>>>>>>>>>> I want to try out a small contribution to the JDK and want to
>>>>>>>>>> build the JDK first.
>>>>>>>>>> I have a Windows 11 laptop.
>>>>>>>>>>
>>>>>>>>>> I am not comfortable with the Windows commands and someone
>>>>>>>>>> mentioned in this forum that most of the building is done on Linux.
>>>>>>>>>> So I installed VirtualBox 7.0.18 and Ubuntu 24.04. however I was
>>>>>>>>>> getting black screens and freezing. I downgraded the Ubuntu to 
>>>>>>>>>> 222.04 and
>>>>>>>>>> still got black screens. I don't know why this is happening.
>>>>>>>>>> Any advice appreciated.
>>>>>>>>>> Anil
>>>>>>>>>>
>>>>>>>>>> On Tue, Jun 18, 2024, 7:25 PM Anil <1dropafl...@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hello,
>>>>>>>>>>> I want to try out a small contribution to the JDK and wanted to
>>>>>>>>>>> build the JDK first,
>>>>>>>>>>> before I change the code.
>>>>>>>>>>> I forked and cloned the jdk following the instructions at The
>>>>>>>>>>> OpenJDK Developers' Guide – OpenJDK Developers’ Guide
>>>>>>>>>>> <https://openjdk.org/guide/#cloning-the-jdk>
>>>>>>>>>>>
>>>>>>>>>>> I am on Windows 11.
>>>>>>>>>>> These instructions are given on the page but I am unsure which
>>>>>>>>>>> of these to execute since I have already forked and cloned the git 
>>>>>>>>>>> repo
>>>>>>>>>>>
>>>>>>>>>>> $ wget 
>>>>>>>>>>> https://download.java.net/java/GA/jdk16/7863447f0ab643c585b9bdebf67c69db/36/GPL/openjdk-16_linux-x64_bin.tar.gz
>>>>>>>>>>> $ tar xzf openjdk-16_linux-x64_bin.tar.gz
>>>>>>>>>>> $ sudo apt-get install autoconf zip make gcc g++ libx11-dev 
>>>>>>>>>>> libxext-dev libxrender-dev libxrandr-dev libxtst-dev libxt-dev 
>>>>>>>>>>> libcups2-dev libfontconfig1-dev libasound2-dev
>>>>>>>>>>> $ cd jdk
>>>>>>>>>>> $ sh ./configure --with-boot-jdk=$HOME/jdk-16/
>>>>>>>>>>> $ make images
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Do I still need to do the wget?
>>>>>>>>>>> Also, I wondered if I should use book jdk-17 instead of jdk-16
>>>>>>>>>>> as in the instructions above.
>>>>>>>>>>> thanks,
>>>>>>>>>>> Anil
>>>>>>>>>>>
>>>>>>>>>>>

Reply via email to