Bug#912790: llvmlite: Please switch to llvm-toolchain-7

Daniel Stender debian at danielstender.com
Wed Dec 26 16:14:31 GMT 2018


0.27 uses LLVM 7, although 0.27.0~rc1 doesn't build cleanly yet:

<cut>
g++  -shared -I/usr/lib/llvm-7/include -fno-exceptions -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fno-rtti -g -flto assembly.cpp bitcode.cpp core.cpp initfini.cpp module.cpp value.cpp executionengine.cpp transforms.cpp passmanagers.cpp targets.cpp dylib.cpp linker.cpp object_file.cpp -o libllvmlite.so -Wl,-z,relro -L/usr/lib/llvm-7/lib -flto -Wl,--exclude-libs=ALL -lLLVM-7
transforms.cpp:10:32: warning: 'unwrap' violates the C++ One Definition Rule  [-Wodr]
      inline PassManagerBuilder *unwrap(LLVMPassManagerBuilderRef P) {
                                 ^
executionengine.cpp:53:27: note: return value type mismatch
      inline TargetMachine *unwrap(LLVMTargetMachineRef P) {
                            ^
/usr/lib/llvm-7/include/llvm/Target/TargetMachine.h:59:7: note: type name 'llvm::TargetMachine' should match type name 'llvm::PassManagerBuilder'
  class TargetMachine {
        ^
/usr/lib/llvm-7/include/llvm/Transforms/IPO/PassManagerBuilder.h:59:7: note: the incompatible type is defined here
  class PassManagerBuilder {
        ^
executionengine.cpp:53:27: note: 'unwrap' was previously declared here
      inline TargetMachine *unwrap(LLVMTargetMachineRef P) {
                            ^
executionengine.cpp:53:27: note: code may be misoptimized unless -fno-strict-aliasing is used
/usr/bin/ld: /tmp/ccmWo70g.ltrans0.ltrans.o: relocation R_X86_64_PC32 against symbol `_ZTVN4llvm11raw_ostreamE@@LLVM_7' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile.linux:22: libllvmlite.so] Error 1
</cut>

DS

-- 
4096R/DF5182C8 (stender at debian.org)
http://www.danielstender.com/



More information about the Pkg-llvm-team mailing list