gpt4 book ai didi

clang - 如何使用 sanitizer 编译 Clang

转载 作者:行者123 更新时间:2023-12-04 01:42:27 26 4
gpt4 key购买 nike

我只是compiled Clang using CMake然后尝试运行 sanitizer (使用 clang -fsanitize=address ),但得到:

/usr/bin/ld: cannot find <CLANG_DIR>/9.0.0/lib/linux/libclang_rt.asan-x86_64.a:
No such file or directory

然后我去了 "How to build" Address sanitizer page ,但它只是说:

Build LLVM/Clang with CMake.



这让我回到了第一页。页面中任何地方唯一提到的“ sanitizer ”是:

LLVM_USE_SANITIZER:STRING

Define the sanitizer used to build LLVM binaries and tests. Possible values are Address, Memory, MemoryWithOrigins, Undefined, Thread, and Address;Undefined. Defaults to empty string.



但这与使用 sanitizers 构建 LLVM 本身有关,而不是在构建后使其可用。

那么,我如何才能真正构建 sanitizer 并使它们可用于 Clang?

最佳答案

实现 Asan 回调的运行时库位于 compiler-rt repo 所以你也需要构建它。实现此目的的一种简单方法是克隆 compiler-rtllvm/projects在运行 cmake 之前。

关于clang - 如何使用 sanitizer 编译 Clang,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56847345/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com