我正在尝试使用 llvm 编译程序,遵循本教程,编写一个玩具编译器,但是当我尝试编译时,我不断收到
'fatal error: 'llvm/Value.h' file not found'
Run Code Online (Sandbox Code Playgroud)
我正在使用 llvm-config --cxxflags,它为编译器提供了目录
-I/usr/local/Cellar/llvm/3.5.0/include
Run Code Online (Sandbox Code Playgroud)
对于包含。Value.h 似乎确实在目录中
/usr/local/Cellar/llvm/3.5.0/include/IR,
Run Code Online (Sandbox Code Playgroud)
但是,如果我在包含中添加 IR,则会在不同的文件中弹出一个丢失的标头。
如果有帮助,我正在使用的完整 llvm-config 命令是,
llvm-config --libs core jit native --cxxflags --ldflags
Run Code Online (Sandbox Code Playgroud)
它的输出是,
-I/usr/local/Cellar/llvm/3.5.0/include -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -std=c++11 -fvisibility-inlines-hidden -fno-exceptions -fno-rtti -fno-common -Woverloaded-virtual -Wcast-qual
-L/usr/local/Cellar/llvm/3.5.0/lib
-lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMX86Desc -lLLVMObject -lLLVMMCParser -lLLVMBitReader -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMJIT -lLLVMExecutionEngine -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMMC -lLLVMCore -lLLVMSupport
Run Code Online (Sandbox Code Playgroud)
我正在使用安装了自制软件的 osx 10.9.5 和 llvm 3.5。
任何建议将不胜感激,谢谢。
我在经历相同的教程时遇到了同样的问题。以下是我在 Ubuntu 14.04 上修复它的方法:
我从根目录搜索该Value.h文件。
$ sudo find . -name Value.h
./usr/include/llvm-3.4/llvm/IR/Value.h
./usr/lib/llvm-3.4/include/lldb/Core/Value.h
Run Code Online (Sandbox Code Playgroud)我将文件中的 include 语句更改node.h为
#include <llvm/IR/Value.h>
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
4175 次 |
| 最近记录: |