Основная программа LLVM: Ошибка компоновщика

Я только начинаю с llvm.

Вот код, который я пытаюсь скомпилировать:

#include <stdio.h>
#include "llvm/IR/LLVMContext.h"#include "llvm/IR/Module.h"#include "llvm/IR/IRBuilder.h"

int main()
{
llvm::LLVMContext& context = llvm::getGlobalContext();
llvm::Module* module = new llvm::Module("top", context);
llvm::IRBuilder<> builder(context);

module->dump( );
}

когда я скомпилирую с:

llvm-g++ try.cpp  -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS `llvm-config --cxxflags --ldflags --libs`

Я получаю файл a.out. Не волнуйтесь.

Но я заинтересован в получении IR-файла LLVM. Итак, я скомпилировал

llvm-g++ try.cpp  -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -S -emit-llvm
lli try.s

Я получаю сообщение об ошибке

LLVM ERROR: Program used external function '_ZN4llvm16getGlobalContextEv' which could not be resolved!

Команда :

llvm-g++ try.cpp  -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS `llvm-config --cxxflags --ldflags --libs` -S -emit-llvm

оставляет мне несколько предупреждений, и когда я выполняю результирующий файл .s с помощью lli, я получаю ту же ошибку, что и раньше.

Большое спасибо за вашу помощь

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]