[llvmlinux] Compiling LLVM and Clang with Cygwin 32

Renato Golin renato.golin at linaro.org
Sun Jan 18 18:54:26 UTC 2015

On 17 January 2015 at 23:02, geist1122 at juno.com <geist1122 at juno.com> wrote:
> What I have tried it first compiling with GCC and C++ and then I have tried
> with the Cygwin Clang compiler..

Hi Marty,

I'm assuming by "C++" you mean g++, the GNU C++ compiler. Since this
is Windows, I'm also assuming this is mingw, not some hand-crafted
version you compiled yourself from FSF sources.

We have a buildbot that compiles Clang and LLVM with mingw for every
commit, so it should be working fine.


I also believe the Windows pre-compiled binaries were compiled with mingw:


Feel free to use those, anyway.

> I have tried with 3.5, 3.4.2, 3.4 and 3.2..
> 3.5 and 3.4 will not successfully build at all..
> 3.4.2 Builds to completion, but upon testing it shows many errors..
> I have had the Most success with 3.2, building with GCC and C++ it shows
> only 4 errors, 3 of them with load Branch weights and one Jit error..

Don't use anything that is more than 6 months old. Clang and LLVM
evolve too fast for you to rely on them. For example, the ARM64
backend this time last year as *completely* different, removed and put
another one in its place.

Right now, if you want anything stable, use 3.5.1. If not, you might
get the currently branched 3.6. You may get lucky with RC1.

> So, my first question is -- Is Load Branch Weights important for Clang to
> work, and at present I don't care about Jit ??

It may be, and this is a fairly old feature, so probably well tested
on all architectures. You may get to the buildbot link I sent up there
and try to build in the same way they do. It might trim away some
inconsistencies to begin with.

> Next, Is there something that tells Exactly what files have been changed,
> between Revisions, Such as 3.2 to 3.3 or 3.3 to 3.4 etc ??

A lot, or worse. LLVM changes so much between releases that diffing
them would be worse than not knowing. I recommend you ignore all that
and make the current release work for you.


More information about the LLVMLinux mailing list