For some reason the asan run-time library does not get added to the link command. <div>It worked for me yesterday, but today my only Mac box is down, so I can't check immediately.<br></div><div>The code that should add the run-time library is in tools/clang/lib/Driver/ToolChains.cpp (search for address_sanitizer), </div>
<div>I'll try to check it later today once my Mac box is up. </div><div><br></div>Does your clang build contain library called "libclang_rt.asan_osx.a"? You can probably try adding it manually. <div><br></div>
<div>--kcc <br><div><br></div><div><br><div><br><div class="gmail_quote">On Tue, Mar 13, 2012 at 12:12 PM, Sean McBride <span dir="ltr"><<a href="mailto:sean@rogue-research.com">sean@rogue-research.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Tue, 13 Mar 2012 12:03:09 -0700, Kostya Serebryany said:<br>
<br>
>Could you please run the same command line with "-v" to see what libraries<br>
>get linked in?<br>
<br>
</div>Kostya,<br>
<br>
Thanks for the fast reply.  Here is the whole thing:<br>
<br>
builder9:~ builder$ clang -O1 -g -faddress-sanitizer -fno-omit-frame-pointer ~/Desktop/test.c -v<br>
clang version 3.1 (trunk 152633)<br>
Target: x86_64-apple-darwin10.8.0<br>
Thread model: posix<br>
 "/Users/builder/llvm/llvm-rel-bin-install/bin/clang-3.1" -cc1 -triple x86_64-apple-macosx10.6.0 -emit-obj -disable-free -disable-llvm-verifier -main-file-name test.c -pic-level 1 -mdisable-fp-elim -masm-verbose -munwind-tables -target-cpu core2 -v -g -resource-dir /Users/builder/llvm/llvm-rel-bin-install/bin/../lib/clang/3.1 -fmodule-cache-path /var/folders/So/SoDaKVGNF1GdaUhl-VCLoE+++TI/-Tmp-/clang-module-cache -O1 -fdebug-compilation-dir /Users/builder -ferror-limit 19 -fmessage-length 179 -faddress-sanitizer -stack-protector 1 -mstackrealign -fblocks -fobjc-dispatch-method=mixed -fobjc-default-synthesize-properties -fdiagnostics-show-option -fcolor-diagnostics -o /var/folders/So/SoDaKVGNF1GdaUhl-VCLoE+++TI/-Tmp-/test-cnlcGw.o -x c /Users/builder/Desktop/test.c<br>

clang -cc1 version 3.1 based upon LLVM 3.1svn default target x86_64-apple-darwin10.8.0<br>
#include "..." search starts here:<br>
#include <...> search starts here:<br>
 /usr/local/include<br>
 /Users/builder/llvm/llvm-rel-bin-install/bin/../lib/clang/3.1/include<br>
 /usr/include<br>
 /System/Library/Frameworks (framework directory)<br>
 /Library/Frameworks (framework directory)<br>
End of search list.<br>
 "/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin10/4.2.1/ld" -dynamic -arch x86_64 -macosx_version_min 10.6.0 -o a.out -lcrt1.10.6.o /var/folders/So/SoDaKVGNF1GdaUhl-VCLoE+++TI/-Tmp-/test-cnlcGw.o /usr/lib/libstdc++.6.dylib -framework CoreFoundation -lSystem<br>

<div class="im">Undefined symbols:<br>
  "___asan_report_load4", referenced from:<br>
</div>      _main in test-cnlcGw.o<br>
  "___asan_init", referenced from:<br>
      _asan.module_ctor in test-cnlcGw.o<br>
ld: symbol(s) not found<br>
clang-3: error: linker command failed with exit code 1 (use -v to see invocation)<br>
<br>
<br>
<br>
</blockquote></div><br></div></div></div>