<div dir="ltr">On Mon, Oct 28, 2013 at 5:53 PM, Richard Smith <span dir="ltr"><<a href="mailto:richard@metafoo.co.uk" target="_blank">richard@metafoo.co.uk</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="im">On Mon, Oct 28, 2013 at 5:13 PM, "C. Bergström" <span dir="ltr"><<a href="mailto:cbergstrom@pathscale.com" target="_blank">cbergstrom@pathscale.com</a>></span> wrote:<br>
</div><div class="gmail_extra">
<div class="gmail_quote"><div class="im"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>On 10/29/13 07:01 AM, Richard Smith wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
[As an aside: I use libc++ for my Clang development (on Ubuntu Linux), and it works for me (tm). This is with libstdc++ providing the ABI pieces, rather than libc++abi or libcxxrt, though.]<br>
</blockquote></div>
libc++ "works" for us as well, but it can't self host. I don't know if your "works" and my definition of works is 1:1. Can your clang+libc++ build itself multiple levels deep?<br></blockquote>

<div><br></div></div><div>Yes. I use my system g++ for my stage1, I use that compiler to build my stage2, and I use my stage2 bootstrapped compiler for all my development work. I rebuild my stage2 every few months.</div>
<div><br>
</div><div>I don't think I've ever explicitly checked that I get stage2 == stage3, but stage2 produces working compilers, but I'm doing a full bootstap now and I'll let you know when it's done.</div></div>
</div></div></blockquote><div><br></div><div>Just for fun, I used libc++ and libc++abi instead of libc++ and libstdc++. Bootstrap success, with:</div><div><br></div><div><div>$ ldd ./bin/clang</div><div>        linux-vdso.so.1 =>  (0x00007fffbbf3c000)</div>
<div>        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fc42f456000)</div><div>        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fc42f252000)</div><div>        libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007fc42f02a000)</div>
<div>        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fc42ee0d000)</div><div>        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fc42ebf6000)</div><div>        libc++.so.1 => /usr/lib/libc++.so.1 (0x00007fc42e90c000)</div>
<div>        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fc42e610000)</div><div>        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fc42e3fa000)</div><div>        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc42e039000)</div>
<div>        /lib64/ld-linux-x86-64.so.2 (0x00007fc42f684000)</div></div><div><br></div><div>I'll do a stage2 / stage3 compare tomorrow, but I'm not expecting any surprises. (I'm also mildly interested in trying to replace libgcc_s with compiler_rt and using lld to link, but again, that's for another day...)</div>
</div></div></div>