<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">2015-03-11 16:22 GMT-05:00 Richard Gorton <span dir="ltr"><<a href="mailto:rcgorton@cognitive-electronics.com" target="_blank">rcgorton@cognitive-electronics.com</a>></span>:<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"><div bgcolor="#FFFFFF" text="#000000">I can confirm that musl builds and works correctly with clang/llvm. 
    We are using musl as a libc for our architecture.<br>
    It has a much smaller code footprint than newlib or glibc.<br></div></blockquote></div><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">I successfully cross-compile the must-libc using clang, with the configuration:</div><div class="gmail_extra"><br></div><div class="gmail_extra">C=clang CFLAGS=--target=arm-none-linux-gnueabi\ --sysroot=/usr/local/arm-2009q\ -I\ /usr/local/arm-2009q3/arm-none-linux-gnueabi/libc/usr/include/ LIBCC= ./configure --target=arm<br></div><div class="gmail_extra"><br></div><div class="gmail_extra">But how to force clang  to use musl-libc rather than its default one? I tried </div><div class="gmail_extra"><br></div><div class="gmail_extra">clang --target arm-none-linux-gnueabi -nostdlib -static hello.c ~/research/musl-1.1.6/lib/crt1.o ~/research/musl-1.1.6/lib/crti.o ~/research/musl-1.1.6/lib/crtn.o -I ~/research/musl-1.1.6/include/ -L ~/research/musl-1.1.6/lib/ -L /usr/local/arm-2009q3/lib/gcc/arm-none-linux-gnueabi/4.4.1/ -lc -lgcc -lgcc_eh<br></div><div class="gmail_extra"><br></div><div class="gmail_extra">clang complaint:</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">/usr/local/arm-2009q3/bin/arm-none-linux-gnueabi-ld: warning: library search path "/lib/../lib" is unsafe for cross-compilation</div><div class="gmail_extra">/usr/local/arm-2009q3/bin/arm-none-linux-gnueabi-ld: warning: library search path "/usr/lib/../lib" is unsafe for cross-compilation</div><div class="gmail_extra">/usr/local/arm-2009q3/bin/arm-none-linux-gnueabi-ld: warning: library search path "/lib" is unsafe for cross-compilation</div><div class="gmail_extra">/usr/local/arm-2009q3/bin/arm-none-linux-gnueabi-ld: warning: library search path "/usr/lib" is unsafe for cross-compilation</div><div class="gmail_extra">/home/yanchao/research/musl-1.1.6/lib//libc.a(__libc_start_main.o): In function `__libc_start_main':</div><div class="gmail_extra">src/env/__libc_start_main.c:(.text+0x30): undefined reference to `__aeabi_memset'</div><div class="gmail_extra">/home/yanchao/research/musl-1.1.6/lib//libc.a(vfprintf.o): In function `vfprintf':</div><div class="gmail_extra">src/stdio/vfprintf.c:(.text+0x28): undefined reference to `__aeabi_memset'</div><div class="gmail_extra">/usr/local/arm-2009q3/lib/gcc/arm-none-linux-gnueabi/4.4.1//libgcc.a(_dvmd_lnx.o): In function `__aeabi_ldiv0':</div><div class="gmail_extra">(.text+0x8): undefined reference to `raise'</div><div class="gmail_extra">/usr/local/arm-2009q3/lib/gcc/arm-none-linux-gnueabi/4.4.1//libgcc_eh.a(unwind-arm.o): In function `unwind_phase2':</div><div class="gmail_extra">unwind-arm.c:(.text+0xae4): undefined reference to `abort'</div><div class="gmail_extra">/usr/local/arm-2009q3/lib/gcc/arm-none-linux-gnueabi/4.4.1//libgcc_eh.a(unwind-arm.o): In function `__gnu_Unwind_Resume':</div><div class="gmail_extra">unwind-arm.c:(.text+0xbe8): undefined reference to `abort'</div><div class="gmail_extra">unwind-arm.c:(.text+0xc10): undefined reference to `abort'</div><div class="gmail_extra">/usr/local/arm-2009q3/lib/gcc/arm-none-linux-gnueabi/4.4.1//libgcc_eh.a(pr-support.o): In function `_Unwind_GetTextRelBase':</div><div class="gmail_extra">pr-support.c:(.text+0x4): undefined reference to `abort'</div><div class="gmail_extra">/usr/local/arm-2009q3/lib/gcc/arm-none-linux-gnueabi/4.4.1//libgcc_eh.a(pr-support.o): In function `_Unwind_GetDataRelBase':</div><div class="gmail_extra">pr-support.c:(.text+0xc): undefined reference to `abort'</div><div class="gmail_extra"><br></div><div class="gmail_extra">Regards,</div><div class="gmail_extra">Chao</div></div></div>