Пример сборки LLVM

Я пытаюсь собрать один из примеров из стандартного дистрибутива, а именно BrainF, но безуспешно.

Я сделал свою копию examples/BrainF и попытался запустить cmake из этого каталога. Изначально CMakeLists.txt выглядел так:

set(LLVM_LINK_COMPONENTS jit bitwriter nativecodegen interpreter)

add_llvm_example(BrainF
  BrainF.cpp
  BrainFDriver.cpp
  )

cmake жаловался на добавление _*. Я прочитал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 на LLVM -Config.cmake.

Затем cmake пожаловался таким образом :«include не удалось найти файл загрузки :AddLLVM». Если я жестко запрограммирую весь путь для включения AddLLVM.cmake, проблема перейдет к включениям, которые существуют внутри AddLLVM.cmake, поэтому это не похоже на правильный способ добиться цели.

Моя среда — Xubuntu 12.04, а llvm+clang 3.1 (получил пакет deb от какого-то ppa, бэкпорт от Debian ).

9
задан Artem Pelenitsyn 13 August 2012 в 12:28
поделиться