我正在尝试使用clang编译C ++应用程序并使用地址sanitizer,但是遇到以下错误:
/Class.so:未定义的符号:__asan_memset
我已将-fsanitize = address添加到编译器标志中
/opt/llvm-3.8.0/bin/clang++ -M --gcc-toolchain=/opt/gcc-5.2.0 -fsanitize=address
我已将-fsanitize = address和-lasan添加到链接器标志中:
-fsanitize=address -lasan -shared -fuse-ld=gold-2.25 -o Class.so Class.o
我还需要做什么才能使其正常工作?
/Class.so:未定义的符号:__asan_memset
我已将-fsanitize = address添加到编译器标志中
/opt/llvm-3.8.0/bin/clang++ -M --gcc-toolchain=/opt/gcc-5.2.0 -fsanitize=address
我已将-fsanitize = address和-lasan添加到链接器标志中:
-fsanitize=address -lasan -shared -fuse-ld=gold-2.25 -o Class.so Class.o
我还需要做什么才能使其正常工作?
clang -print-file-name=libclang_rt.asan.so
(不包括asan-x86_64
)。我建议运行该命令。你应该会得到一个完整路径。如果没有,它就不能工作。 - Timmmm