[cfe-dev] anyone knows the current state of libc++ on windows?

G M gmisocpp at gmail.com
Thu May 8 09:04:57 PDT 2014


Hi I've only just noticed this discussion. I don't have time to add to it /
follow it now but I will tomorrow..

In the mean time, here's a few things I know that might be useful, not in
answer to any particular question.

libc++ doesn't yet compile fully with MS's cl compiler or visual studio.
That's because of library and language issues.

cl can't handle some language constructs like static constant member
variables that g++ and clang++ support. That's a show stopper. When cl.exe
gets constexpr this will likely be solvable.

MSVC doesn't have a full c-library, so libc++ on it's own isn't that useful
if using MS's libraries (as opposed to mingw compatible versions). If you
build libc++ with Visual Studio, it will fail because some functions libc++
declares clash with MS versions. This could be fixed but I haven't bothered
because until cl supports the missing language constructs necessary libc++
still won't build.

libc++ needs pthread support, MSVC's C library doesn't have that. An
initial pthread library was contributed a while back, possibly by Nico
(though I may be wrong), but it was withdrawn or never followed up on. I
never hard back when I inquired why. mingw does have pthread support.

libc++ expects a C library atomic support (I think) on which it bases it's
own atomic<> support. MS don't provide that.

libc++ does build on Windows with g++ (or did until very recently if
not) and mingw and does build with clang++ and mingw. If you have problems
using g++ and libc++ on windows and it's a std::string inline function
error, Marshall is aware of it, but I don't know the latest.

clang-cl might be something to try if you're used to MS's cl, it might have
better default options for use on Windows than clang++ but I haven't tried
it.

Sorry, gotta run now. Will try to follow this more tomorrow. Hope this
helps.



On Fri, May 9, 2014 at 1:19 AM, Dennis Luehring <dl.soluz at gmx.net> wrote:

> Am 08.05.2014 14:59, schrieb Yaron Keren:
>
>  Why use the combination of: clang compiler & Visual C++ link & Visual C++
>> C
>> headers & libcxx C++ headers ?
>>
>
> i thought this would be the base for an MinGW free libc++/clang on Windows
> clang as my c++ compiler using an libc++ build with clang based on msvc
> c-runtime headers/lib
>
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20140509/88bdd11d/attachment.html>


More information about the cfe-dev mailing list