[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Aw: RE: RE: Octave 3.8.2 released - llvm
From: |
Tatsuro MATSUOKA |
Subject: |
Re: Aw: RE: RE: Octave 3.8.2 released - llvm |
Date: |
Wed, 27 Aug 2014 17:56:17 +0900 (JST) |
----- Original Message -----
>From: John Donoghue
>To: Mike Miller Cc: Tatsuro MATSUOKA ; Stefan Mahr ; "address@hidden"
><address@hidden>
>Date: 2014/8/27, Wed 12:42
>Subject: Re: Aw: RE: RE: Octave 3.8.2 released - llvm
>
>
>
>On Tue, Aug 26, 2014 at 10:51 PM, Mike Miller <address@hidden> wrote:
>
>On Wed, Aug 27, 2014 at 10:13:47 +0900, Tatsuro MATSUOKA wrote:
>>> I have applied the patch and tried bootstrap and configure.
>>> The "check for LLVM::legacy::PassManager" (config.log)
>>>
>>> configure:15446: checking check for LLVM::legacy::PassManager
>>> configure:15486: g++ -o conftest -g -O2 -pthread -D__STDC_CONSTANT_MACROS
>>> -D__STDC_LIMIT_MACROS -isystem /opt/clang+llvm-3.4.2/include
>>> -I/usr/include/mpi -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX
>>> -L/opt/clang+llvm-3.4.2/lib -lz -lpthread -ltinfo -ldl -lm conftest.cpp
>>> -L/opt/clang+llvm-3.4.2/lib -lz -lpthread -ltinfo -ldl -lm
>>> -lLLVMInstrumentation -lLLVMIRReader -lLLVMAsmParser -lLLVMDebugInfo
>>> -lLLVMOption -lLLVMLTO -lLLVMLinker -lLLVMipo -lLLVMVectorize
>>> -lLLVMBitWriter -lLLVMBitReader -lLLVMTableGen -lLLVMR600CodeGen
>>> -lLLVMR600Desc -lLLVMR600Info -lLLVMR600AsmPrinter
>>> -lLLVMSystemZDisassembler -lLLVMSystemZCodeGen -lLLVMSystemZAsmParser
>>> -lLLVMSystemZDesc -lLLVMSystemZInfo -lLLVMSystemZAsmPrinter
>>> -lLLVMHexagonCodeGen -lLLVMHexagonAsmPrinter -lLLVMHexagonDesc
>>> -lLLVMHexagonInfo -lLLVMNVPTXCodeGen -lLLVMNVPTXDesc -lLLVMNVPTXInfo
>>> -lLLVMNVPTXAsmPrinter -lLLVMCppBackendCodeGen -lLLVMCppBackendInfo
>>> -lLLVMMSP430CodeGen -lLLVMMSP430Desc -lLLVMMSP430Info
>>> -lLLVMMSP430AsmPrinter -lLLVMXCoreDisassembler -lLLVMXCoreCodeGen
>>>-lLLVMXCoreDesc -lLLVMXCoreInfo -lLLVMXCoreAsmPrinter -lLLVMMipsDisassembler
>>>-lLLVMMipsCodeGen -lLLVMMipsAsmParser -lLLVMMipsDesc -lLLVMMipsInfo
>>>-lLLVMMipsAsmPrinter -lLLVMARMDisassembler -lLLVMARMCodeGen
>>>-lLLVMARMAsmParser -lLLVMARMDesc -lLLVMARMInfo -lLLVMARMAsmPrinter
>>>-lLLVMAArch64Disassembler -lLLVMAArch64CodeGen -lLLVMAArch64AsmParser
>>>-lLLVMAArch64Desc -lLLVMAArch64Info -lLLVMAArch64AsmPrinter
>>>-lLLVMAArch64Utils -lLLVMPowerPCCodeGen -lLLVMPowerPCAsmParser
>>>-lLLVMPowerPCDesc -lLLVMPowerPCInfo -lLLVMPowerPCAsmPrinter
>>>-lLLVMSparcCodeGen -lLLVMSparcDesc -lLLVMSparcInfo -lLLVMX86Disassembler
>>>-lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter
>>>-lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils
>>>-lLLVMMCDisassembler -lLLVMMCParser -lLLVMInterpreter -lLLVMMCJIT -lLLVMJIT
>>>-lLLVMCodeGen -lLLVMObjCARCOpts -lLLVMScalarOpts -lLLVMInstCombine
>>>-lLLVMTransformUtils
>>> -lLLVMipa -lLLVMAnalysis -lLLVMRuntimeDyld -lLLVMExecutionEngine
>>>-lLLVMTarget -lLLVMMC -lLLVMObject -lLLVMCore -lLLVMSupport -lm >&5
>>> /opt/clang+llvm-3.4.2/lib/libLLVMSupport.a(Signals.o): In function
>>> `llvm::sys::PrintStackTrace(_IO_FILE*)':
>>> Signals.cpp:(.text+0x834): undefined reference to `dladdr'
>>> Signals.cpp:(.text+0x965): undefined reference to `dladdr'
>>> /opt/clang+llvm-3.4.2/lib/libLLVMSupport.a(Process.o): In function
>>> `llvm::sys::Process::FileDescriptorHasColors(int)':
>>> Process.cpp:(.text+0x687): undefined reference to `setupterm'
>>> Process.cpp:(.text+0x6b0): undefined reference to `tigetnum'
>>> Process.cpp:(.text+0x6b9): undefined reference to `set_curterm'
>>> Process.cpp:(.text+0x6c1): undefined reference to `del_curterm'
>>> collect2: error: ld returned 1 exit status
>>> configure:15486: $? = 1
>>>
>>>
>>> Hmmmm?
>>> This time -ltinfo -ldl are included but the check of
>>> LLVM::legacy::PassManager was in failure.
>>
>>The huge list of libraries indicates that your LLVM installation doesn't
>>provide the single shared library. Do you have any shared libraries in
>>/opt/clang+llvm-3.4.2/lib or only static libs? Did you build llvm with
>>the --enable-shared option? That might help, with the added bonus that
>>shared libs on Linux typically link with the libraries that they depend
>>on, so you don't need to specify the additional libs.
>>
>>That said there may still be a bug here if someone really does wish to
>>build Octave against LLVM static libs.
>>
>>--
>>mike
>>
>Order of the llvm libs vs ldflags is important
>Attached patch detected legacy ok for me and is currently compiling
I have not yet rebuilt llvm-3.4.2 to give shared libraries.
I tried to apply the patch (llvm-fix.patch) and looked that this fixed the
issue.
Surely the patch enabled to set LEGACY_PASSMANAGER flag and octave build was
done successfully.
In addition, I confirmed jit worked.
I strongly appreciate to the efforts by all people concerning the matter.
I will try shared llvm-3.4.2 build and tried to link to octave (default branch).
Tatsuro
- Re: Octave 3.8.2 released - llvm, (continued)
- Re: Octave 3.8.2 released - llvm, Tatsuro MATSUOKA, 2014/08/26
- RE: Octave 3.8.2 released - llvm, John D, 2014/08/26
- Aw: RE: Octave 3.8.2 released - llvm, Stefan Mahr, 2014/08/26
- Re: Aw: RE: Octave 3.8.2 released - llvm, Tatsuro MATSUOKA, 2014/08/26
- RE: Aw: RE: Octave 3.8.2 released - llvm, John D, 2014/08/26
- Aw: RE: RE: Octave 3.8.2 released - llvm, Stefan Mahr, 2014/08/26
- Re: RE: RE: Octave 3.8.2 released - llvm, Mike Miller, 2014/08/26
- Re: Aw: RE: RE: Octave 3.8.2 released - llvm, Tatsuro MATSUOKA, 2014/08/26
- Re: Aw: RE: RE: Octave 3.8.2 released - llvm, Mike Miller, 2014/08/26
- Re: Aw: RE: RE: Octave 3.8.2 released - llvm, John Donoghue, 2014/08/26
- Re: Aw: RE: RE: Octave 3.8.2 released - llvm,
Tatsuro MATSUOKA <=
- Re: Aw: RE: RE: Octave 3.8.2 released - llvm, Tatsuro MATSUOKA, 2014/08/27
- Re: Aw: RE: RE: Octave 3.8.2 released - llvm, Tatsuro MATSUOKA, 2014/08/27
- Re: Aw: RE: RE: Octave 3.8.2 released - llvm, Tatsuro MATSUOKA, 2014/08/27
- RE: Octave 3.8.2 released - llvm, John D, 2014/08/25
- Re: Octave 3.8.2 released - llvm, Tatsuro MATSUOKA, 2014/08/25