Je suis en train d'utiliser le compilateur C++ pour compiler le programme suivant:Comment compiler des programmes C++ qui incluent des en-têtes API LLVM?
#include <stdio.h>
#include "llvm/IR/LLVMContext.h"
#include "llvm/Support/SourceMgr.h"
#include "llvm/IR/Module.h"
int main(int argc, char* argv[])
{
if(argc < 2)
llvm::errs() << "Expected an argument - IR file name\n";
llvm::LLVMContext &context = llvm::getGlobalContext();
llvm::SMDiagnostic err;
llvm::Module* module = llvm::ParseIRFile(argv[1], err, context);
if(!mod)
{
err.print(argv[0], errs());
return 1;
}
return 0;
}
Je suis en train de compiler le programme en utilisant la commande suivante:
clang++ main.cpp -o main
Cependant, quand je compile, Je reçois l'erreur de compilation suivante:
main.cpp:2:10: fatal error: 'llvm/IR/LLVMContext.h' file not found
#include "llvm/IR/LLVMContext.h"
^
1 error generated.
Dans ce cas, je ne sais pas exactement comment lier les en-têtes API LLVM lors de la compilation avec main.cpp Bruit.
Toute aide serait grandement appréciée.
'llvm-config --cxxflags' –
llvm-config --help; notez que --cxxflags ne fonctionne que pour la compilation mais pas pour le linkage. –