<div dir="ltr"><div>Is your only problem that you don't have definitions for mmap/ftruncate/mkdir?</div><div><br></div><div>If so, then you don't need to compile glibc. You merely need to solve the problem you actually have: you need a C library for your system calls.</div><div><br></div><div>I have no idea what operating system you are running on your target, but the function names suggest it's Unix-like. Unix-like operating systems typically implement system calls as a trap to the operating system using an instruction specially built for this purpose.  To this end, the "mmap" function in glibc merely arranges to get the arguments in the correct registers (or possibly the stack), and then invokes the proper trap.  Perhaps 10 lines of assembly in all.</div><div><br></div><div>If you can figure out the calling convention for your system calls, then you can easily write your own syscall library in assembler, for each call you require, which you can then link in, in addition to whatever else you are using.</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Sat, Dec 22, 2018 at 4:29 AM xuruobin via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">To whom it may concern,<br>
<br>
        Is there a way to build glibc with clang/llvm? I’m working on enabling llvm-cov for my compiler which is a totally new arch with a libc.a built from newlib. I successfully built compiler-rt but when I typed the command ` clang++ --target=xxx -fprofile-instr-generate -fcoverage-mapping foo.cc -o foo`, the linker failed because of undefined reference to `mmap'/`ftruncate'/`mkdir'. I found these functions are supported by glibc but I cannot bulid glibc with clang/llvm(configure gave me an error “These critical programs are missing or too old: compiler”). So I want to know how can I compile glibc with clang/llvm or are there some WIP patches to help me with this requirement?<br>
<br>
Thanks,<br>
Ruobin.<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div>