weld-project / weld

High-performance runtime for data analytics applications

Home Page:https://www.weld.rs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LLVM link error using Fedora and LLVM 5.0.0

klimagor opened this issue · comments

commented

Running rustc --crate-name repl weld/bin/repl.rs --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=4178a8ecce9ef8dc -C extra-filename=-4178a8ecce9ef8dc --out-dir /home/maxim/dev/weld/target/release/deps -L dependency=/home/maxim/dev/weld/target/release/deps --extern csv=/home/maxim/dev/weld/target/release/deps/libcsv-673e91af3938dd9a.rlib --extern env_logger=/home/maxim/dev/weld/target/release/deps/libenv_logger-39797e621e01fccc.rlib --extern fnv=/home/maxim/dev/weld/target/release/deps/libfnv-9424781156e1a6f9.rlib --extern clap=/home/maxim/dev/weld/target/release/deps/libclap-3c487565d1e70a8d.rlib --extern libc=/home/maxim/dev/weld/target/release/deps/liblibc-1161855bd855d9d1.rlib --extern lazy_static=/home/maxim/dev/weld/target/release/deps/liblazy_static-c6b3716caffc6294.rlib --extern chrono=/home/maxim/dev/weld/target/release/deps/libchrono-042c87fa8a6c4d21.rlib --extern log=/home/maxim/dev/weld/target/release/deps/liblog-8e04655518752c17.rlib --extern rustyline=/home/maxim/dev/weld/target/release/deps/librustyline-cb3ccf7899bdf3e4.rlib --extern regex=/home/maxim/dev/weld/target/release/deps/libregex-461d47eb07bcbdf0.rlib --extern time=/home/maxim/dev/weld/target/release/deps/libtime-c5d87ac29d8d209b.rlib --extern llvm_sys=/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib --extern weld=/home/maxim/dev/weld/target/release/deps/libweld.rlib -C link-args=-Wl,-export-dynamic -L native=/home/maxim/dev/weld/weld_rt/cpp -L native=/usr/lib64 -L native=/home/maxim/dev/weld/target/release/build/llvm-sys-1bd87abf81304152/out
error: linking with cc failed: exit code: 1
|
= note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/home/maxim/dev/weld/target/release/deps/repl-4178a8ecce9ef8dc.repl0.rust-cgu.o" "-o" "/home/maxim/dev/weld/target/release/deps/repl-4178a8ecce9ef8dc" "/home/maxim/dev/weld/target/release/deps/repl-4178a8ecce9ef8dc.crate.allocator.rust-cgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-nodefaultlibs" "-L" "/home/maxim/dev/weld/target/release/deps" "-L" "/home/maxim/dev/weld/weld_rt/cpp" "-L" "/usr/lib64" "-L" "/home/maxim/dev/weld/target/release/build/llvm-sys-1bd87abf81304152/out" "-L" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/home/maxim/dev/weld/target/release/deps/librustyline-cb3ccf7899bdf3e4.rlib" "/home/maxim/dev/weld/target/release/deps/libweld.rlib" "/home/maxim/dev/weld/target/release/deps/libfnv-9424781156e1a6f9.rlib" "/home/maxim/dev/weld/target/release/deps/libchrono-042c87fa8a6c4d21.rlib" "/home/maxim/dev/weld/target/release/deps/liblazy_static-c6b3716caffc6294.rlib" "/home/maxim/dev/weld/target/release/deps/libenv_logger-39797e621e01fccc.rlib" "/home/maxim/dev/weld/target/release/deps/libregex-1367d74b282dfbfb.rlib" "/home/maxim/dev/weld/target/release/deps/libthread_local-b54002f68e4c6a44.rlib" "/home/maxim/dev/weld/target/release/deps/liblazy_static-9e4945d4835adcef.rlib" "/home/maxim/dev/weld/target/release/deps/libutf8_ranges-a748d4df2e5cba42.rlib" "/home/maxim/dev/weld/target/release/deps/libnum-40c87c9786c97a83.rlib" "/home/maxim/dev/weld/target/release/deps/libnum_iter-aad94e89f183a707.rlib" "/home/maxim/dev/weld/target/release/deps/libclap-3c487565d1e70a8d.rlib" "/home/maxim/dev/weld/target/release/deps/libstrsim-3dff1acd7c5005c9.rlib" "/home/maxim/dev/weld/target/release/deps/libansi_term-76184f0f8252bc49.rlib" "/home/maxim/dev/weld/target/release/deps/libbitflags-3a57ee5c9893e851.rlib" "/home/maxim/dev/weld/target/release/deps/libvec_map-67e119a62bba37ff.rlib" "/home/maxim/dev/weld/target/release/deps/libnix-d49baa5b06ab30c2.rlib" "/home/maxim/dev/weld/target/release/deps/libbitflags-525d28e07e2cddea.rlib" "/home/maxim/dev/weld/target/release/deps/libencode_unicode-8e244e4e6aec95d5.rlib" "/home/maxim/dev/weld/target/release/deps/liblog-8e04655518752c17.rlib" "/home/maxim/dev/weld/target/release/deps/liblog-85769ca34cf93a5a.rlib" "/home/maxim/dev/weld/target/release/deps/libcfg_if-58e230a7ef01382c.rlib" "/home/maxim/dev/weld/target/release/deps/libregex-461d47eb07bcbdf0.rlib" "/home/maxim/dev/weld/target/release/deps/libregex_syntax-ed98d0ff57f30ba1.rlib" "/home/maxim/dev/weld/target/release/deps/libaho_corasick-eddcfa102eb046e8.rlib" "/home/maxim/dev/weld/target/release/deps/libmemchr-773419a48ed19476.rlib" "/home/maxim/dev/weld/target/release/deps/libthread_local-6e6351669f3608f2.rlib" "/home/maxim/dev/weld/target/release/deps/libthread_id-3b57a7a0d26c7b9f.rlib" "/home/maxim/dev/weld/target/release/deps/libutf8_ranges-e6cc8db52b94f812.rlib" "/home/maxim/dev/weld/target/release/deps/libaho_corasick-ff3d05accbf79c8f.rlib" "/home/maxim/dev/weld/target/release/deps/libmemchr-708017f892b9100e.rlib" "/home/maxim/dev/weld/target/release/deps/libunreachable-691a78348b62c7a2.rlib" "/home/maxim/dev/weld/target/release/deps/libvoid-6116c2ff9b571f25.rlib" "/home/maxim/dev/weld/target/release/deps/libregex_syntax-f21080e607f177d2.rlib" "/home/maxim/dev/weld/target/release/deps/libtime-c5d87ac29d8d209b.rlib" "/home/maxim/dev/weld/target/release/deps/libnum_integer-3b00b7a4ff4465b3.rlib" "/home/maxim/dev/weld/target/release/deps/libnum_traits-ea921c6bb92cceaf.rlib" "/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib" "/home/maxim/dev/weld/target/release/deps/libatty-5f1ac0f87f8bb239.rlib" "/home/maxim/dev/weld/target/release/deps/liblibc-1161855bd855d9d1.rlib" "/home/maxim/dev/weld/target/release/deps/libtextwrap-f46a360a00d60492.rlib" "/home/maxim/dev/weld/target/release/deps/libunicode_width-b1950fe42042fef9.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-4aa36c412a83c2f9.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-98ded97d22e6cfef.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-255b26061fd89c89.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc_system-e532b5994345d7d5.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-b14d58516640c6cf.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-78c586190b1028d9.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_unicode-534a42938edb515f.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/librand-28dd92accab353ef.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-50995d3ca32eef4f.rlib" "/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-74ba341d7c051df0.rlib" "-Wl,-Bdynamic" "-l" "stdc++" "-l" "stdc++" "-l" "util" "-l" "util" "-l" "dl" "-l" "rt" "-l" "pthread" "-l" "gcc_s" "-l" "c" "-l" "m" "-l" "rt" "-l" "pthread" "-l" "util" "-Wl,-export-dynamic"
= note: /home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function std::sync::once::Once::call_once::{{closure}}': weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN3std4sync4once4Once9call_once28_$u7b$$u7b$closure$u7d$$u7d$17h75d245e35da7898bE+0x32): undefined reference to LLVMLinkInMCJIT'
/home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function core::ops::function::FnOnce::call_once': weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4core3ops8function6FnOnce9call_once17hf227958f1a7ed11cE+0x2f): undefined reference to LLVMLinkInMCJIT'
/home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function core::ptr::drop_in_place': weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4core3ptr13drop_in_place17h69c45ffd69ba7ccdE+0x17): undefined reference to LLVMDisposeExecutionEngine'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4core3ptr13drop_in_place17h69c45ffd69ba7ccdE+0x1f): undefined reference to LLVMContextDispose' /home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function core::ptr::drop_in_place':
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4core3ptr13drop_in_place17h85fc2988e8515823E+0x10): undefined reference to LLVMDisposeExecutionEngine' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4core3ptr13drop_in_place17h85fc2988e8515823E+0x19): undefined reference to LLVMContextDispose'
/home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function <weld::easy_ll::CompiledModule as core::ops::drop::Drop>::drop': weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN71_$LT$weld..easy_ll..CompiledModule$u20$as$u20$core..ops..drop..Drop$GT$4drop17h4842a830f32d82aeE+0x10): undefined reference to LLVMDisposeExecutionEngine'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text.ZN71$LT$weld..easy_ll..CompiledModule$u20$as$u20$core..ops..drop..Drop$GT$4drop17h4842a830f32d82aeE+0x19): undefined reference to LLVMContextDispose' /home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function weld::easy_ll::load_library':
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll12load_library17h66536668eff70618E+0x75): undefined reference to LLVMLoadLibraryPermanently' /home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function weld::easy_ll::compile_module':
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0xb5): undefined reference to LLVMContextCreate' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x423): undefined reference to LLVMCreateMemoryBufferWithMemoryRange'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x53a): undefined reference to LLVMDisposeExecutionEngine' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x547): undefined reference to LLVMContextDispose'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x8b2): undefined reference to LLVMCreateMemoryBufferWithMemoryRange' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0xa59): undefined reference to LLVMLinkModules2'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0xc54): undefined reference to LLVMVerifyModule' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0xdf2): undefined reference to LLVMGetNamedFunction'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0xe03): undefined reference to LLVMTypeOf' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0xe0b): undefined reference to LLVMPrintTypeToString'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1188): undefined reference to LLVMCreatePassManager' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1195): undefined reference to LLVMPassManagerBuilderCreate'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x11a9): undefined reference to LLVMPassManagerBuilderSetOptLevel' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x11be): undefined reference to LLVMPassManagerBuilderPopulateLTOPassManager'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x11c6): undefined reference to LLVMPassManagerBuilderDispose' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x11d3): undefined reference to LLVMRunPassManager'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x11db): undefined reference to LLVMDisposePassManager' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1479): undefined reference to LLVMInitializeMCJITCompilerOptions'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x14a6): undefined reference to LLVMCreateMCJITCompilerForModule' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1859): undefined reference to LLVMGetFunctionAddress'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1b45): undefined reference to LLVMPrintModuleToString' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1c08): undefined reference to LLVMGetExecutionEngineTargetMachine'
weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1c27): undefined reference to LLVMTargetMachineEmitToMemoryBuffer' weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll14compile_module17h6f91c745bd8ea220E+0x1ccf): undefined reference to LLVMGetBufferStart'
/home/maxim/dev/weld/target/release/deps/libweld.rlib(weld.weld0.rust-cgu.o): In function weld::easy_ll::parse_module_helper': weld0-cd05a9912a46762ec429c3759d6e51fe.rs:(.text._ZN4weld7easy_ll19parse_module_helper17h935957756d1de28cE+0x31): undefined reference to LLVMParseIRInContext'
/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeAllTargetInfos': /usr/include/llvm/Config/Targets.def:26: undefined reference to LLVMInitializeX86TargetInfo'
/usr/include/llvm/Config/Targets.def:27: undefined reference to LLVMInitializeAMDGPUTargetInfo' /usr/include/llvm/Config/Targets.def:28: undefined reference to LLVMInitializePowerPCTargetInfo'
/usr/include/llvm/Config/Targets.def:29: undefined reference to LLVMInitializeNVPTXTargetInfo' /usr/include/llvm/Config/Targets.def:30: undefined reference to LLVMInitializeSystemZTargetInfo'
/usr/include/llvm/Config/Targets.def:31: undefined reference to LLVMInitializeAArch64TargetInfo' /usr/include/llvm/Config/Targets.def:32: undefined reference to LLVMInitializeARMTargetInfo'
/usr/include/llvm/Config/Targets.def:33: undefined reference to LLVMInitializeMipsTargetInfo' /usr/include/llvm/Config/Targets.def:34: undefined reference to LLVMInitializeBPFTargetInfo'
/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeAllTargets': /usr/include/llvm/Config/Targets.def:26: undefined reference to LLVMInitializeX86Target'
/usr/include/llvm/Config/Targets.def:27: undefined reference to LLVMInitializeAMDGPUTarget' /usr/include/llvm/Config/Targets.def:28: undefined reference to LLVMInitializePowerPCTarget'
/usr/include/llvm/Config/Targets.def:29: undefined reference to LLVMInitializeNVPTXTarget' /usr/include/llvm/Config/Targets.def:30: undefined reference to LLVMInitializeSystemZTarget'
/usr/include/llvm/Config/Targets.def:31: undefined reference to LLVMInitializeAArch64Target' /usr/include/llvm/Config/Targets.def:32: undefined reference to LLVMInitializeARMTarget'
/usr/include/llvm/Config/Targets.def:33: undefined reference to LLVMInitializeMipsTarget' /usr/include/llvm/Config/Targets.def:34: undefined reference to LLVMInitializeBPFTarget'
/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeAllTargetMCs': /usr/include/llvm/Config/Targets.def:26: undefined reference to LLVMInitializeX86TargetMC'
/usr/include/llvm/Config/Targets.def:27: undefined reference to LLVMInitializeAMDGPUTargetMC' /usr/include/llvm/Config/Targets.def:28: undefined reference to LLVMInitializePowerPCTargetMC'
/usr/include/llvm/Config/Targets.def:29: undefined reference to LLVMInitializeNVPTXTargetMC' /usr/include/llvm/Config/Targets.def:30: undefined reference to LLVMInitializeSystemZTargetMC'
/usr/include/llvm/Config/Targets.def:31: undefined reference to LLVMInitializeAArch64TargetMC' /usr/include/llvm/Config/Targets.def:32: undefined reference to LLVMInitializeARMTargetMC'
/usr/include/llvm/Config/Targets.def:33: undefined reference to LLVMInitializeMipsTargetMC' /usr/include/llvm/Config/Targets.def:34: undefined reference to LLVMInitializeBPFTargetMC'
/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeAllAsmPrinters': /usr/include/llvm/Config/AsmPrinters.def:27: undefined reference to LLVMInitializeX86AsmPrinter'
/usr/include/llvm/Config/AsmPrinters.def:28: undefined reference to LLVMInitializeAMDGPUAsmPrinter' /usr/include/llvm/Config/AsmPrinters.def:29: undefined reference to LLVMInitializePowerPCAsmPrinter'
/usr/include/llvm/Config/AsmPrinters.def:30: undefined reference to LLVMInitializeNVPTXAsmPrinter' /usr/include/llvm/Config/AsmPrinters.def:31: undefined reference to LLVMInitializeSystemZAsmPrinter'
/usr/include/llvm/Config/AsmPrinters.def:32: undefined reference to LLVMInitializeAArch64AsmPrinter' /usr/include/llvm/Config/AsmPrinters.def:33: undefined reference to LLVMInitializeARMAsmPrinter'
/usr/include/llvm/Config/AsmPrinters.def:34: undefined reference to LLVMInitializeMipsAsmPrinter' /usr/include/llvm/Config/AsmPrinters.def:35: undefined reference to LLVMInitializeBPFAsmPrinter'
/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeAllAsmParsers': /usr/include/llvm/Config/AsmParsers.def:27: undefined reference to LLVMInitializeX86AsmParser'
/usr/include/llvm/Config/AsmParsers.def:28: undefined reference to LLVMInitializeAMDGPUAsmParser' /usr/include/llvm/Config/AsmParsers.def:29: undefined reference to LLVMInitializePowerPCAsmParser'
/usr/include/llvm/Config/AsmParsers.def:30: undefined reference to LLVMInitializeSystemZAsmParser' /usr/include/llvm/Config/AsmParsers.def:31: undefined reference to LLVMInitializeAArch64AsmParser'
/usr/include/llvm/Config/AsmParsers.def:32: undefined reference to LLVMInitializeARMAsmParser' /usr/include/llvm/Config/AsmParsers.def:33: undefined reference to LLVMInitializeMipsAsmParser'
/home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeAllDisassemblers': /usr/include/llvm/Config/Disassemblers.def:27: undefined reference to LLVMInitializeX86Disassembler'
/usr/include/llvm/Config/Disassemblers.def:28: undefined reference to LLVMInitializeAMDGPUDisassembler' /usr/include/llvm/Config/Disassemblers.def:29: undefined reference to LLVMInitializePowerPCDisassembler'
/usr/include/llvm/Config/Disassemblers.def:30: undefined reference to LLVMInitializeSystemZDisassembler' /usr/include/llvm/Config/Disassemblers.def:31: undefined reference to LLVMInitializeAArch64Disassembler'
/usr/include/llvm/Config/Disassemblers.def:32: undefined reference to LLVMInitializeARMDisassembler' /usr/include/llvm/Config/Disassemblers.def:33: undefined reference to LLVMInitializeMipsDisassembler'
/usr/include/llvm/Config/Disassemblers.def:34: undefined reference to LLVMInitializeBPFDisassembler' /home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeNativeTarget':
/usr/include/llvm-c/Target.h:139: undefined reference to LLVMInitializeX86TargetInfo' /usr/include/llvm-c/Target.h:140: undefined reference to LLVMInitializeX86Target'
/usr/include/llvm-c/Target.h:141: undefined reference to LLVMInitializeX86TargetMC' /home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeNativeAsmParser':
/usr/include/llvm-c/Target.h:153: undefined reference to LLVMInitializeX86AsmParser' /home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeNativeAsmPrinter':
/usr/include/llvm-c/Target.h:165: undefined reference to LLVMInitializeX86AsmPrinter' /home/maxim/dev/weld/target/release/deps/libllvm_sys-75f81e9a3700bb6a.rlib(target.o): In function LLVMInitializeNativeDisassembler':
/usr/include/llvm-c/Target.h:177: undefined reference to `LLVMInitializeX86Disassembler'
collect2: error: ld returned 1 exit status

error: aborting due to previous error

error: Could not compile weld.

Interesting -- looks like it can't find LLVM. Is this the command that runs when doing cargo build?

A few simple things to check:

  • Make sure llvm-config is found on $PATH and llvm-config --version gives back 5.0.0
  • Try adding the LLVM libraries to the LD_LIBRARY_PATH (or whatever the Fedora equivalent is)
  • The version of the llvm-sys crate you use must match the LLVM version you are using. Make sure you change llvm-sys = "38.0.1" to llvm-sys = "50.0.0" in Cargo.toml.

FYI I don't think we have tested this with LLVM 5, so if you run into issues once it compiles, do let us know!

commented

I downgraded the LLVM to version 4.0, but it did not help.

Yes, I am running the command cargo build --release.
llvm-config --version return now 4.0.1
My LD_LIBRARY_PATH was empty, but I set it now LD_LIBRARY_PATH=/usr/lib64:/usr/bin. I am not sure how it should be configured...
I changed the Cargo.toml. Now it points to llvm-sys = "40.0.0".