- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我可以在 makefile 中使用以下变量成功编译 Nginx
CC = clang-6.0
CFLAGS = -pipe -O -Wall -Wextra -Wpointer-arith -Wconditional-uninitialized -Wno-unused-parameter -Werror -g
当尝试使用 -fsanitize=fuzzer 或 -fsanitize=fuzzer-no-link 并将我的 Makefile 更改为:
CFLAGS = -pipe -fsantizer=fuzzer-no-link -O -Wall -Wextra -Wpointer-arith -Wconditional-uninitialized -Wno-unused-parameter -Werror -g
我收到大量对 __sancov_lowest_stack
和 __sanitizer_cov_trace_const_cmp8
我该如何解决这个问题?我缺少哪些库?
最佳答案
您必须将像 -fsanitize=fuzzer
这样的 sanitizer 标志添加到您的 CFLAGS
和 您的 LDFLAGS
。
如果它们没有传递给链接器,而只是传递给编译器,您会得到大量 undefined symbol 错误,用于 sanitizer 运行时库函数(就像您在问题中引用的那个)。
请注意,在使用 -fsanitizer=fuzzer
时,将其与 Adress Sanitizer(即 -fsanitizer=fuzzer,address
)结合使用是有意义的。
此外,使用 libFuzzer,您 have to provide your own fuzzer callback function LLVMFuzzerTestOneInput()
并省略 main()
函数。
关于Clang libFuzzer 未定义对 `__sanitizer_cov_trace_const_cmp8' 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48699256/
我是一名优秀的程序员,十分优秀!