我正在尝试使用 gcc 和地址清理程序 ( ) 在 AIX 7.2 上构建一个 cpp 程序,-fsanitize=address
但出现以下错误:
cc1plus: warning: '-fsanitize=address' not supported for this target
collect2: fatal error: library libasan not found
compilation terminated.
我想如果我有共享库也许编译会成功libasan
。所以我尝试llvm
从源代码构建,但遇到了同样的问题:
> export CC=gcc; export CXX=g++;
> cmake -DLLVM_ENABLE_PROJECTS=clang -DLLVM_ENABLE_RUNTIMES=compiler-rt -DCMAKE_INSTALL_PREFIX=/llvm_install -DLLVM_USE_SANITIZER=Address -DCMAKE_BUILD_TYPE=Debug -DLLVM_TARGETS_TO_BUILD="PowerPC" -G "Unix Makefiles" /llvm-project/llvm
Consolidate compiler generated dependencies of target LLVMDemangle
[ 0%] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/Demangle.cpp.o
cc1plus: error: '-fsanitize=address' not supported for this target [-Werror]
cc1plus: all warnings being treated as errors
我的环境:
gcc version 10.3.0
cmake version 3.20.0
AIX 7.2
问题:
fsanitize=address
AIX 上不支持 gcc吗?- 有人在 AIX 上成功构建了带有地址清理程序的 cpp 程序吗?如果是这样,您能分享一下步骤吗?
- 我需要使用吗XLC?有没有办法让它工作
gcc
?
如果这不是询问 AIX 问题的正确论坛,我们深表歉意。