之前已经在这里问过这个问题,但我找不到适合我的解决方案。 LLVM 项目的示例 CMakeLists.txt 文件- 这是最初的问题。
但是,在使用 LLVM 制作项目时,我遇到了几个问题。
平台:Windows 7 编译器:MingW
1)首先,我使用的是 llvm 的 svn 版本,目前是 3.1。目前,llvm 3.0 也不存在 MingW 的二进制文件,所以我决定使用最新的本身并使用 mingw 构建它。因此,尽管构建工作正常,但我似乎无法在 bin 文件夹中找到 llvm-config perl 脚本。我尝试搜索整个目录,但我只能找到一个 llvm-config 文件夹和一个依赖文件。
2) 我尝试为 Visual Studio 2010 构建 llvm,但它不适用于 cmake,所以我不得不使用 MingW。
3)现在,这是我将库添加到 CMake 的顺序 - LLVMXCoreInfo
LLVMMipsAsmPrinter LLVMMipsCodeGen LLVMMipsInfo LLVMMBlazeAsmPrinter LLVMMBlazeCodeGen LLVMMBlazeInfo LLVMLinker LLVMipo LLVMInterpreter LLVMInstrumentation LLVMJIT LLVMExecutionEngine
LLVMMC LLVMBitWriter LLVMX86Disassembler LLVMX86AsmParser LLVMX86AsmPrinter LLVMX86CodeGen LLVMX86Info LLVMAsmParser LLVMARMAsmParser LLVMMCParser LLVMARMAsmPrinter LLVMARMCodeGen LLVMARMInfo LLVMArchive LLVMBitReader
LLVMSelectionDAG
LLVMAsmPrinter LLVMCodeGen LLVMScalarOpts LLVMInstCombine LLVMTransformUtils LLVMipa LLVMAnalysis LLVMTarget LLVMMC LLVMCore
LLVM 支持
imagehlp psapi m
4)但是,添加 InitializeNativeTarget(),开始给我链接错误,我认为这是因为依赖关系不正确。
5)我想使用 llvm_map_components_to_libraries(REQ_LLVM_LIBRARIES jit native),因此我将它添加到我的 CMakeLists.txt INCLUDE(cmake/LLVM-Config.cmake)
但是,这不起作用。cmake/LLVM-Config.cmake:141 处的 CMake 错误(消息):在 llvm 库列表中找不到库“jit”。
现在,这个问题真的太长了,但我基本上想问在 CMake 中最好的方法是什么。有人可以发布整个事情(对于Windows)。另外,有没有办法为 VS 2010 构建它。我尝试了 CLang 网站上的说明,但这些说明在 CMake 中给了我这个错误。
“字符串子命令 REGEX,模式 MATCH 至少需要 5 个参数来命令。”
我真的需要一些帮助来弄清楚如何让依赖项在 llvm 中工作并使用 VS 构建它。我真的很感激一些帮助。