gpt4 book ai didi

cmake - 构建 LLVM 示例

转载 作者:行者123 更新时间:2023-12-02 16:10:08 29 4
gpt4 key购买 nike

我正在尝试构建标准发行版的示例之一,即 BrainF,但没有成功。

我制作了 example/BrainF 的副本并尝试从该目录运行 cmake。最初 CMakeLists.txt 看起来像这样:

set(LLVM_LINK_COMPONENTS jit bitwriter nativecodegen interpreter)

add_llvm_example(BrainF
BrainF.cpp
BrainFDriver.cpp
)

cmake 提示 add_*。我通读了http://llvm.org/docs/CMake.html#embedding并决定在 CMakeLists.txt 中添加一些前奏:

find_package(LLVM)

# Define add_llvm_* macro's.
include(AddLLVM)

add_definitions(${LLVM_DEFINITIONS})
include_directories(${LLVM_INCLUDE_DIRS})
link_directories(${LLVM_LIBRARY_DIRS})

然后cmake提示无法执行find_package(LLVM)并建议寻找 LLVMConfig.cmake 或 llvm-config.cmake。我发现的最接近的东西位于/usr/src/llvm/cmake/modules/LLVM-Config.cmake 下,所以我设置 CMAKE_PREFIX_PATH=/usr/src/llvm/cmake/modules/并将 LLVMConfig.cmake 软链接(soft link)到 LLVM-Config.cmake。

然后cmake这样提示:“include 找不到加载文件:AddLLVM”。如果我对整个路径进行硬编码以包含 AddLLVM.cmake,则问题会出现在 AddLLVM.cmake 中存在的包含内容上,因此这似乎不是完成任务的正确方法。

我的环境是 Xubuntu 12.04 和 llvm+clang 3.1(从一些 ppa 获取 deb 软件包,从 Debian 反向移植)。

最佳答案

此线程帮助我获得了 AddLLVM:For the cmake "include" command, what is the difference between a file and a module?

此外,现在手动设置后出现问题:“在 llvm 库列表中找不到库‘jit’”。错误全文:

$ cmake .
CMake Error at /usr/src/llvm/cmake/modules/LLVM-Config.cmake:141 (message):
Library `jit' not found in list of llvm libraries.
Call Stack (most recent call first):
/usr/src/llvm/cmake/modules/LLVM-Config.cmake:54 (explicit_map_components_to_libraries)
/usr/src/llvm/cmake/modules/LLVM-Config.cmake:47 (explicit_llvm_config)
/usr/src/llvm/cmake/modules/AddLLVM.cmake:86 (llvm_config)
/usr/src/llvm/cmake/modules/AddLLVM.cmake:112 (add_llvm_executable)
CMakeLists.txt:17 (add_llvm_example)

关于cmake - 构建 LLVM 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11933485/

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