I am trying compile a libc with llvm (currently uclibc). I am able to compile uclibc by changing the Rules.mak to use llvm-gcc, llvm-ar, llvm-ad, and not using strip. (I also use the --emit-llvm flag for llvm-gcc). When I run llvm-nm on
libc.a (or try to use libc.a) I run into problems. For example, strlen is not defined -- llvm-nm shows that strlen.os has __GI_strlen while if I compile with the "normal" tools (gcc, ar, ...) strlen.os has __GI_strlen as well as strlen listed (both have the symbol value 00000000).
<br><br>Any ideas why the archive I create with llvm doesn't define the strlen (and most other) symbols but does define the __GI_strlen?<br><br>I'm sure it is obvious by now, but I am pretty new to LLVM -- thanks in advance for your help and time!
<br><br>~ David<br><br>PS. Also, out of curiosity, was someone able to successfully compile all or
part of glibc? I saw it was on the open projects page a few years ago
(thanks to the old CVS data) but could not find the revision in which
it was removed from that list. I suspect that because it was removed,
perhaps someone else has figured it out and I could see what they did
and try to compile it myself?<br><br>