我们最近使用Fedora 20打包过程构建了clang / llvm的3.3版本,作为解包,将不同部分移动到正确位置以及构建编译器工具链的指南。除了动态内存分析器没有引用回源代码之外,所有内容似乎都正常工作。 Fedora平台上的相同用法确实引用了源代码。
这是我们第一次尝试使用clang / llvm工具集。这也是这个论坛中提出的第一个问题,与我参与的所有其他人的组织看起来有点不同,所以如果我没有弄清楚在这里发布问题的细微差别,我提前做出了批评。似乎很奇怪,主要项目似乎没有办法提问。
答案 0 :(得分:0)
我们找到了一个解决方案,不知道为什么我们需要添加额外的 环境设置。编译如下: PATH = / net / fas4045 / home3 / jq031c / llvm_sandbox / bin:$ PATH make -j 16 DEPFILES = CXX = clang ++ CC = clang CXXFLAGS =“ - fsanitize = memory -fsanitize-memory-track-origins -fno-omit-frame-pointer“ LDXFLAGS = -fsanitize =存储器
运行如下: MSAN_SYMBOLIZER_PATH = / net / fas4045 / home3 / jq031c / llvm_sandbox / bin / llvm-symbolizer ./runtests.sh
我们可以理解,我们需要将分析选项添加到链接标志中,因为我们执行编译的两步构建,然后是链接。搜索后的发现是需要使用环境变量定义llvm-symbolizer的路径,而其他动态分析选项似乎都不需要。