[cfe-dev] [libcxx] Instructions for building Windows or Cygwin binaries?

Agustín K-ballo Bergé via cfe-dev cfe-dev at lists.llvm.org
Wed Feb 10 12:34:44 PST 2016


On 2/10/2016 5:19 PM, Jonathan Roelofs wrote:
>
>
> On 2/10/16 12:54 PM, Craig, Ben via cfe-dev wrote:
>> I am attempting to build libcxx through Cygwin.  My goal is to make sure
>> that I don't make the Windows build any worse.  Since I don't plan on
>> using the results for anything other than running the tests, I'm open to
>> whichever variant of Windows / Cygwin building is most convenient.
>>
>> Alternatively, if all the Windows builds of libcxx are known to be
>> completely busted and unsupported at this time, then I'll stop worrying
>> about it, and I'll just make my best guess as to the changes that I need
>> to make.
>>
>> I've seen this page...
>> http://libcxx.llvm.org/results.Windows.html
>> ... but it appears rather dated.  It mentions Clang (pre-3.1) for
>> instance.
>>
>> I have attempted to get things running on my own, both through cmake,
>> and with the buildit script.
>> * Fully native Windows, with CMake and Visual Studio.
>> ** Even with -DLLVM_BUILD_RUNTIME=ON, I couldn't get a Visual studio
>> project out of cmake.
>> * Cygwin, using the built-in version of clang (3.5.2) and buildit
>> ** This headers with this version of gcc don't seem to support a lot of
>> the c99 math functions (I think this is newlib?)
>> * Cygwin, using the built-in version of gcc (4.9.3) and cmake
>> ** Same set of missing c99 math functions
>> * Cygwin, using i686-w64-mingw32-clang (3.5.1) and buildit
>> ** With some source level hacks, I can get this to compile.  I get loads
>> of linker errors, mostly involving exception handling (_Unwind_Resume
>> and the personality function).
>> ** I couldn't get libunwind to build, because of missing elf header
>> parsing functions.
>> ** I couldn't get a simple hello world program to run (though I could
>> get it to link).
>>
>> So, any build bot recipes or other information out there on Windows
>> and/or Cygwin builds?
>
> I think K-ballo has some state on this.

Some time ago I tried making libc++ work with MSVC2013 
(https://github.com/K-ballo/libcxx). I had some success, but the number 
of workarounds for compiler bugs was too high (most of those have been 
fixed in MSVC2015).

I did not try MinGW nor Cygwin, but my impression was that if they were 
supported at some point in time they weren't anymore.

Regards,
-- 
Agustín K-ballo Bergé
http://talesofcpp.fusionfenix.com



More information about the cfe-dev mailing list