[build2] Using build2 with clang 6 (trunk) on windows

Boris Kolpackov boris at codesynthesis.com
Wed Dec 6 10:01:43 UTC 2017


Username I Wanted Was Already Taken <usernameiwantedwasalreadytaken at gmail.com> writes:

> clang++ -o hello hello.exe.obj

Ok, this isn't right. There should be the .exe extension and we should
be using link.exe directly.

I've staged a new version that should fix this. Can you give it a try
and send the -V output?

If everything looks good then can you also try building a library,
something along these lines:

exe{hello}: cxx{driver} lib{hello}
lib{hello}: cxx{hello}

And then try both static and shared:

b config.bin.lib=static -V
b config.bin.lib=shared -V


> Those linker warnings are a Clang bug, I think. I've updated the LLVM trunk
> and those warnings now appear even if I compile a simple hello world
> directly with clang.

Yes, and that's the reason I am reluctant to make a CI machine for this
configuration -- half of the time I will be investigating Clang bugs.
Do you know if the 5.0 release is usable/stable for this target?


> clang++.exe -cc1 -triple x86_64-pc-windows-msvc19.11.25547

Interesting. So they do know the compiler version and internally
even slap it onto the target triplet (which is the wrong thing to
do IMO; it should be the runtime version). But for some reason
they omit it from the -dumpmachine output. I've written to cfe-dev
to see if they will be willing to fix this:

http://lists.llvm.org/pipermail/cfe-dev/2017-December/056240.html

Boris



More information about the users mailing list