LLVM引用不存在的标头

时间:2012-12-18 11:29:08

标签: c++ llvm

我从SVN下载了LLVM和Clang,构建了它们,并编写了一个小样本程序。但是,LLVM标头(llvm/support/type_traits.h)似乎包含另一个LLVM标头llvm/support/DataTypes.h,该标头不存在。我检查了LLVM网站上的文档,他们似乎也不认为它应该存在。

如何解决此问题?

1 个答案:

答案 0 :(得分:2)

某些文件会自动生成到构建目录中。在编译程序以将LLVM用作库时,请始终使用llvm-config工具为您提供正确的头目录和库目录以进行链接。我在Makefile

中有这个
LLVM_CONFIG_COMMAND = `$(LLVM_BIN_PATH)/llvm-config --cxxflags --libs` \
                      `$(LLVM_BIN_PATH)/llvm-config --ldflags`

我在编译器命令行中使用它。

LLVM_BIN_PATH = $(LLVM_BUILD_PATH)/Debug+Asserts/bin

其中LLVM_BUILD_PATH是您运行configure的路径,其余部分取决于您构建的版本(我通常使用Debug + Asserts来破解LLVM内部)。