我试图在Qt中使用gcc地址消毒剂,将CONFIG += sanitizer sanitize_address
添加到我的.pro
文件中,但我得到了一个error: cannot find -lasan
。
我该如何安装库?
我正在使用Qt提供的MinGW,但我也可以试用一个独立版本。
不幸的是,GCC不支持Windows上的Asan:这里是libsanitizer/configure.tgt的摘录:
case "${target}" in
x86_64-*-linux* | i?86-*-linux*)
...
powerpc*-*-linux*)
...
sparc*-*-linux*)
...
s390*-*-linux*)
...
sparc*-*-solaris2.11*)
...
arm*-*-linux*)
...
mips*64*-*-linux*)
...
mips*-*-linux*)
...
aarch64*-*-linux*)
...
x86_64-*-darwin[1]* | i?86-*-darwin[1]*)
...
x86_64-*-solaris2.11* | i?86-*-solaris2.11*)
...
*)
UNSUPPORTED=1
;;
esac
请注意,Clang支持它(有一些努力 - 请参阅wiki了解详细信息)并且许多人已成功使用它。