Windows toolchain parse problems
Erik Joelsson
erik.joelsson at oracle.com
Thu Aug 23 14:51:48 UTC 2018
Hello Artur,
We would certainly like to not be dependent on locale settings at build
time, but it's hard to squash out all the instances. This one seems
especially server though as it completely prevents building. On non
Windows platforms, you can always get around it with "LC_ALL=C make ..."
but I don't know of any equivalent on Windows.
/Erik
On 2018-08-11 10:11, Artur Khusainov wrote:
> Hi,
>
> I'm currently trying to build openjdk11 from on my Windows 7 with VS2017
> installed. I discovered the issue which cause "bash configure" to fail.
>
> + configure: The C compiler (located as
> /cygdrive/c/progra~2/mib055~1/2017/commun~1/vc/tools/msvc/1414~1.264/bin/hostx86/x64/cl)
> does not seem to be the required microsoft compiler.
> + configure: error: A microsoft compiler is required. Try setting
> --with-tools-dir.
> + configure: The result from running it was: "▒▒?▒▒▒▒▒▒? ▒▒▒▒▒▒▒▒▒▒
> Microsoft (R)
> C/C++ ▒▒▒? 19.14.26433 ▒▒▒ x64"
> + configure exiting with result code 1
>
> I think the problem is that configuration relies on en-US locale output. It
> is actually valid, but cannot be parsed because my Windows installation
> uses ru-RU locale by default. Latest cl.exe returns the following line:
> + Оптимизирующий компилятор Microsoft (R) C/C++ версии 19.14.26433 для x64
>
> I think that would be a problem for anyone who doesn't use en-US locale.
> I managed to avoid this issue by replacing line 434 in
> make/autoconf/toolchain.m4:
> + $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP "Microsoft.*C/C++" > /dev/null
>
> But still, COMPILER_VERSION_NUMBER is not parsed properly and configure
> prints a warning:
> + WARNING: You are using microsoft older than 16.00.30319.01. This is not a
> supported configuration.
>
> After that compilation ran smoothly.
More information about the build-dev
mailing list