llvmllvm-clanghalide

llvm Linking CXX shared library ../../lib/libLTO.so undefiened refernece to target


i tried to install tiramisu compiler

and once trying install it's sub-modules ( (ISL, LLVM and Halide) by using this command

dina@dina-VBox:~/tiramisu$ ./utils/scripts/install_submodules.sh ./

i get the error

Done installing isl
#### Installing LLVM ####
cd .//3rdParty/llvm
.//utils/scripts/functions.sh: line 6: cd: .//3rdParty/llvm: No such file or directory

and to fix it i used the command shared on the answer here

./utils/scripts/install_submodules.sh $PWD

it worked better then the first one i reached 95% of the installation however it stop here with this error

Linking CXX shared library ../../lib/libLTO.so undefiened refernece to target

Here is the detail of the error

   [ 95%] Linking CXX executable ../../bin/opt
    [ 95%] Linking CXX shared library ../../lib/libLTO.so
    ../../lib/libLLVMX86AsmParser.a(X86AsmParser.cpp.o): In function `llvm::RegisterMCAsmParser<(anonymous namespace)::X86AsmParser>::Allocator(llvm::MCSubtargetInfo const&, llvm::MCAsmParser&, llvm::MCInstrInfo const&, llvm::MCTargetOptions const&)':
    X86AsmParser.cpp:(.text._ZN4llvm19RegisterMCAsmParserIN12_GLOBAL__N_112X86AsmParserEE9AllocatorERKNS_15MCSubtargetInfoERNS_11MCAsmParserERKNS_11MCInstrInfoERKNS_15MCTargetOptionsE+0x164): undefined reference to `llvm::CreateX86AsmInstrumentation(llvm::MCTargetOptions const&, llvm::MCContext const&, llvm::MCSubtargetInfo const*&)'
    CMakeFiles/llvm-mc.dir/llvm-mc.cpp.o: In function `main':
    llvm-mc.cpp:(.text.startup.main+0xe4): undefined reference to `LLVMInitializeX86Disassembler'
    ../../lib/libLLVMX86Desc.a(X86MCTargetDesc.cpp.o): In function `LLVMInitializeX86TargetMC':
    X86MCTargetDesc.cpp:(.text.LLVMInitializeX86TargetMC+0xc7): undefined reference to `llvm::createX86_32AsmBackend(llvm::Target const&, llvm::MCRegisterInfo const&, llvm::Triple const&, llvm::StringRef, llvm::MCTargetOptions const&)'

...
...


    ../../lib/libLLVMAArch64CodeGen.a(AArch64TargetObjectFile.cpp.o):(.data.rel.ro._ZTVN4llvm29AArch64_MachoTargetObjectFileE[_ZTVN4llvm29AArch64_MachoTargetObjectFileE]+0xa0): undefined reference to `llvm::TargetLoweringObjectFileMachO::SelectSectionForGlobal(llvm::GlobalObject const*, llvm::SectionKind, llvm::TargetMachine const&) const'
    collect2: error: ld returned 1 exit status
    tools/opt/CMakeFiles/opt.dir/build.make:349: recipe for target 'bin/opt' failed
    make[2]: *** [bin/opt] Error 1
    CMakeFiles/Makefile2:44345: recipe for target 'tools/opt/CMakeFiles/opt.dir/all' failed
    make[1]: *** [tools/opt/CMakeFiles/opt.dir/all] Error 2
    Makefile:151: recipe for target 'all' failed
    make: *** [all] Error 2
    dina@dina-VBox:~/tiramisu$ ^C

I do not know what should i do to fix this new error can someone help please.


Solution

  • I have not been able to fix the problem on it's self but i have changed the way of installing tiramisu.

    I did pay attention to that and i do want to pay your attention to too that may serve your time and success your installation.

    it took me one month to be able to install tiramisu i had many issues. But once i install it in a partition and doing the steps show above carefully i have been finally to install successfully.

    Best of luck :).