2012-03-05 1 views
1

я пытаюсь создать LLVM передать с помощью руководства по http://llvm.org/releases/2.9/docs/WritingAnLLVMPass.html
, но у меня возникают несколько проблем:Пишем LLVM Pass

  • я есть не многие из папки, которые указаны в руководство (lib/Transform/Hello) и (Debug + Asserts), я создал их, правильно? Каков правильный путь? я создать эти: /usr/lib/llvm-2.9/lib/Transforms/Hello и /usr/lib/llvm-2.9/Debug+Asserts

  • , когда я пытаюсь создать файл в руководстве у меня есть ошибки :

.

# Makefile for hello pass 


# Path to top level of LLVM heirarchy 
LEVEL = /usr/lib/llvm-2.9/build  #*********I MODIFY THIS!!!! *************** 

# Name of the library to build 
LIBRARYNAME = Hello 

# Make the shared library become a loadable module so the tools can 
# dlopen/dlsym on the resulting library. 
LOADABLE_MODULE = 1 

# Tell the build system which LLVM libraries your pass needs. You'll probably 
# need at least LLVMSystem.a, LLVMSupport.a, LLVMCore.a but possibly several 
# others too. 
LLVMLIBS = LLVMCore.a LLVMSupport.a LLVMSystem.a 

# Include the makefile implementation stuff 
include $(LEVEL)/Makefile.common 

и я изменить и другие строки в Makefile.common:

ifndef LLVM_SRC_ROOT 
include $(LEVEL)/Makefile.rules 
else 
include $(LLVM_SRC_ROOT)/Makefile.rules 
endif 

, потому что он не находит Makefile.rules (таким образом она работает)

, но теперь у меня есть эта ошибка, когда я действительно делаю в папку, содержащие мой файл hello.c (/usr/lib/llvm-2.9/lib/Transforms/Hello):

make: *** No rule to make target "/configure", needed by "/config.status". Stop. 

В чем проблема?!?

ответ

2

Видимо, кажется, вы пытаетесь разработать, используя двоичный файл библиотек. К сожалению, это не сработает. Вам нужно скачать источники, собрать их, а затем начать разработку собственного прохода.

Кроме того, 2.9 уже слишком древний. Рассмотрим хотя бы обновление до версии 3.0.

+0

я прочитал это где-то: "# НЕ устанавливайте LLVMLIBS, документация LLVM имеет это неправильно #LLVMLIBS = LLVMCore.a LLVMSupport.a LLVMSystem.a" это правда? что вы имеете в виду: «Вам нужно загружать источники, строить их», где я могу их скачать? – Nicola

+2

Очевидно, из http://llvm.org/releases/download.html#3.0 –

+0

ОК, спасибо !!, но теперь у меня другая проблема, я получаю эту ошибку, когда пытаюсь сделать: ../../ ../Makefile.common:61: ../../../Makefile.config: Нет такого файла или каталога ../../../Makefile.common:69: /Makefile.rules: Нет таких файл или каталог make: *** Нет правила для создания цели /Makefile.rules. Стоп. Я прочитал еще одно сообщение с этим вопросом, но я не понимаю, как решить – Nicola

 Смежные вопросы

  • Нет связанных вопросов^_^