mrg*_*oom 35 gcc address-sanitizer
我正在尝试用我的项目来构建
g++ -O0 -g -fsanitize=address -fno-omit-frame-pointer
Run Code Online (Sandbox Code Playgroud)
但是会遇到很多错误:
/home/user/libs/opencv/include/opencv2/core/mat.hpp:715: undefined reference to `__asan_report_load8'
Run Code Online (Sandbox Code Playgroud)
如何使用AddressSanitize支持编译项目?
我的gcc版本是4.8.4.
yug*_*ugr 64
您需要添加-fsanitize=address编译器标志(CFLAGS,CXXFLAGS)和链接器标志(LDFLAGS).您可能只是将它添加到编译器标志中.
请注意,-lasanASan开发人员(例如此处)广泛不鼓励使用显式选项,因为它错过了一些其他重要的链接器标志.唯一推荐的链接方式是使用-fsanitize=address.
作为旁注,对于更积极的验证标志,请检查Asan FAQ(寻找"更积极的诊断").
Sme*_*eey 11
您需要将开关添加-lasan到编译/链接命令行以链接正确的库.
| 归档时间: |
|
| 查看次数: |
37132 次 |
| 最近记录: |