Windows configure "issues"

Erik Joelsson erik.joelsson at oracle.com
Tue May 21 09:44:54 UTC 2013



On 2013-05-19 22:58, David Chase wrote:
> This is for Windows 7, following instructions, mostly vanilla.
> I restarted after all the various installations.
> I'm "following" the instructions at http://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
>
> The non-vanilla step, inspired by the cautionary warnings about paths with spaces in them and cygwin, was to install Java and VS10 express in C:\PFx86, not C:\Program Files.
>
>
> #1, after setting the path explicitly, it was ignored and "not found".
>
> $ bash configure  --with-boot-jdk=$J --with-tools-dir="C:\\PFx86\\MVS10.0\\VC\\bin"
>
> configure: Found Visual Studio installation at /cygdrive/c/PFx86/MVS10.0/ using VS100COMNTOOLS variable
> configure: Warning: vc/bin/amd64/vcvars64.bat is missing, this is probably Visual Studio Express. Ignoring
> configure: Found Visual Studio installation at /cygdrive/c/Program Files/Microsoft Visual Studio 10.0 using well-known name
> configure: Warning: vc/bin/amd64/vcvars64.bat is missing, this is probably Visual Studio Express. Ignoring
> configure: Cannot locate a valid Visual Studio installation, checking current environment
> checking for Visual Studio variables... not found
> configure: Cannot locate a valid Visual Studio or Windows SDK installation on disk,
> configure: nor is this script run from a Visual Studio command prompt.
> configure: Try setting --with-tools-dir to the VC/bin directory within the VS installation
> configure: or run "bash.exe -l" from a VS command prompt and then run configure from there.
> configure: error: Cannot continue
> configure exiting with result code 1
>
> My understanding of what happened is that it found, both from the tools dir and from the environment variable, an Express install, but because it was an Express install it kept looking, and was misled by something dribbled in Program Files by my non-standard-installation-location install, and did not then backtrack to the perfectly good Express install that I instructed it to use.
>
> I told it exactly what to do, in exactly the way that I was instructed, and it ignored my good advice.  If the answer is "fails if not installed in the default location, even if you direct it to the non-default location" (i.e., ProgramSPACEFiles, despite our worrying language about the dangers of SPACEs in paths), then we should be sure to say so.
>
Configure looks for visual studio (and windows SDK) installs and tries 
to run the vcvars*.bat to get the environment necessary to build. In 
this case it couldn't find the bat file where it was expected to be. 
Probably because it looked for the 64bit version of the file when there 
was only a 32bit install of visual studio. If that's the case, we should 
add a better fail message since 64bit build is normally the default. As 
noted by Volker, this can be solved by installing the correct windows 
SDK which will provide the 64bit compiler.
> #2, if you fire up a Visual Studio command prompt and say "bash.exe -l", it will not find it and will not run it.
> If you naively attempt to reverse engineer the "which base" from your Cygwin window, you will be lead astray and go looking for C:\cygwin\usr\bin\bash.exe", which does not exist.
> What does exist, what you should tell people to type, and what works, is: C:\cygwin\bin\bash.exe .
> So the instructions should say that, instead.
>
> However, once reverse-engineered, it did seem work (if this is working):
>
> configure: Found Visual Studio installation at /cygdrive/c/PFx86/MVS10.0/ using VS100COMNTOOLS variable
> configure: Warning: vc/bin/amd64/vcvars64.bat is missing, this is probably Visual Studio Express. Ignoring
> configure: Found Visual Studio installation at /cygdrive/c/Program Files/Microsoft Visual Studio 10.0 using well-known name
> configure: Warning: vc/bin/amd64/vcvars64.bat is missing, this is probably Visual Studio Express. Ignoring
> configure: Cannot locate a valid Visual Studio installation, checking current environment
> checking for Visual Studio variables... ok
> checking for msvcr100.dll... configure: Warning: msvcr100.dll not found in VCINSTALLDIR: C:\PFx86\MVS10.0\VC\
> configure: msvcr100.dll found in C:\windows/system32
> C:\windows/system32/msvcr100.dll
> configure: Rewriting MSVCR_DLL to "/cygdrive/c/windows/system32/msvcr100.dll"
>
This is a possible workaround. Where did you read the "bash.exe -l" 
instruction?
> #3, the DirectX 9.0 link is not maybe dead, it is dead.
> The search for "DirectX 9.0 SDK Update Summer 2004" is also dead; nothing is found.
> Searches for "DirectX 9" yield downloads that are not SDKs, searches for "DirectX 9 SDK" and "DirectX 9.0 SDK" leads to SDKs that are not version 9.
>
> Does it still work with somewhat newer (e.g., April 2006, version "DX")?
> http://www.microsoft.com/en-us/download/details.aspx?id=24982
> If it does, we should say so, because currently the instructions lead to dead ends.
>
Unfortunately Microsoft is no longer distributing this version of the 
directx SDK and unfortunately it's still the officially supported SDK by 
OpenJDK. It will still build with newer versions (Technically it will 
still build with the directx sdk bundled with VS2010, but configure 
won't let you do that anymore without being tricked), but there will be 
the potential for bugs. The choice of supported directx sdk dependencies 
should be discussed with the engineering team using it.

/Erik
> David
>



More information about the build-dev mailing list