使用clang++编译cpp程序:
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Verifier.h"
using namespace llvm;
int main() {
LLVMContext context;
Module *module = new Module("test", context);
IRBuilder<> builder(context);
// 创建一个函数
llvm::Function *func = llvm::Function::Create(
llvm::FunctionType::get(builder.getInt32Ty(), false),
llvm::Function::ExternalLinkage,
"main",
module
);
verifyFunction(*func);
module->dump();
return 0;
}
编译命令:
clang++ -O3 `llvm-config --cxxflags --ldflags --system-libs --libs c

文章讲述了使用clang++编译C++程序时遇到的LLVMIR编译错误,主要原因是链接zstd库失败。给出了在Ubuntu和macOS上安装和配置zstd库的方法,以及解决类似链接问题的通用策略。
最低0.47元/天 解锁文章
1028

被折叠的 条评论
为什么被折叠?



