我使用的是 fedora-11 系统,最近我安装了 llvm ( sudo yum -y install llvm llvm-docs llvm-devel
)。当我搜索 llvm 时,我将它们放入/usr/bin
. 一些二进制文件的链接已损坏(llvm-gcc
、llvm-g++
、llvm-cpp
等)。包含文件位于/usr/include/llvm
和库中/usr/lib/llvm
。如何编译它们使用g++
?我尝试按照指导编译教程中给出的万花筒代码,但编译失败。
我明白了:
toy.cpp:5:30: error: llvm/LLVMContext.h: No such file or directory
toy.cpp:352: error: ‘getGlobalContext’ was not declared in this scope
toy.cpp: In member function ‘virtual llvm::Value* NumberExprAST::Codegen()’:
toy.cpp:358: error: ‘getGlobalContext’ was not declared in this scope
toy.cpp: In member function ‘virtual llvm::Value* BinaryExprAST::Codegen()’:
toy.cpp:379: error: ‘getDoubleTy’ is not a member of ‘llvm::Type’
toy.cpp:379: error: ‘getGlobalContext’ was not declared in this scope
toy.cpp: In member function ‘llvm::Function* PrototypeAST::Codegen()’:
toy.cpp:407: error: ‘getDoubleTy’ is not a member of ‘llvm::Type’
toy.cpp:407: error: ‘getGlobalContext’ was not declared in this scope
toy.cpp:408: error: ‘getDoubleTy’ is not a member of ‘llvm::Type’
toy.cpp: In member function ‘llvm::Function* FunctionAST::Codegen()’:
toy.cpp:454: error: ‘getGlobalContext’ was not declared in this scope
toy.cpp: In function ‘int main()’:
toy.cpp:543: error: ‘LLVMContext’ was not declared in this scope
toy.cpp:543: error: ‘Context’ was not declared in this scope
toy.cpp:543: error: ‘getGlobalContext’ was not declared in this scope
我也找不到LLVMContext.h
文件。所以我想这可能是一个版本问题。我应该怎么做才能让它工作?
一些帮助会很好!提前致谢... :)