[已解决]clang 使用address-sanitize报错,ld找不到libclang_rt.*

当使用clang++14并且打来-fsanitize时,编译出错,

1 $ clang++ -O1 -g -fsanitize=address -fno-omit-frame-pointer infile.cc
2 /bin/ld: cannot find /usr/lib64/clang/14.0.5/lib/linux/libclang_rt.asan_static-x86_64.a: No such file or directory
3 /bin/ld: cannot find /usr/lib64/clang/14.0.5/lib/linux/libclang_rt.asan-x86_64.a: No such file or directory
4 /bin/ld: cannot find /usr/lib64/clang/14.0.5/lib/linux/libclang_rt.asan_cxx-x86_64.a: No such file or directory
5 clang-14: error: linker command failed with exit code 1 (use -v to see invocation)

 

解决办法:安装compiler-rt。例如sudo dnf install compiler-rt.

 

参考:

https://www.coder.work/article/800744

posted @ 2022-12-16 08:44  安然春夏  阅读(1254)  评论(0)    收藏  举报