Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Jul 2021 17:06:33 -0400
From:      Ryan Stone <rysto32@gmail.com>
To:        FreeBSD Hackers <freebsd-hackers@freebsd.org>
Cc:        Dimitry Andric <dim@freebsd.org>
Subject:   clang build failure with WITH_LLVM_TARGET_BPF=yes
Message-ID:  <CAFMmRNxSHPN41gQS5z53FeGRabQ6O4vT0_gi%2BBQbd1vRjKkS9g@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
I have the following option enabled in src.conf, and I'm getting this
build failure in clang.  Disabling the option seems to fix the build.

ld: error: undefined symbol:
llvm::initializeBPFAdjustOptPass(llvm::PassRegistry&)
>>> referenced by BPFTargetMachine.cpp
>>>               BPFTargetMachine.o:(LLVMInitializeBPFTarget) in archive /usr/obj/srcpool/src/rstone/freebsd/amd64.amd64/tmp/obj-tools/lib/clan
g/libllvm/libllvm.a

ld: error: undefined symbol:
llvm::initializeBPFCheckAndAdjustIRPass(llvm::PassRegistry&)
>>> referenced by BPFTargetMachine.cpp
>>>               BPFTargetMachine.o:(LLVMInitializeBPFTarget) in archive /usr/obj/srcpool/src/rstone/freebsd/amd64.amd64/tmp/obj-tools/lib/clan
g/libllvm/libllvm.a

ld: error: undefined symbol: llvm::createBPFCheckAndAdjustIR()
>>> referenced by BPFTargetMachine.cpp
>>>               BPFTargetMachine.o:((anonymous namespace)::BPFPassConfig::addIRPasses()) in archive /usr/obj/srcpool/src/rstone/freebsd/amd64.
amd64/tmp/obj-tools/lib/clang/libllvm/libllvm.a

ld: error: undefined symbol: llvm::createBPFAdjustOpt()
>>> referenced by BPFTargetMachine.cpp
>>>               BPFTargetMachine.o:(std::__1::__function::__func<llvm::BPFTargetMachine::adjustPassManager(llvm::PassManagerBuilder&)::$_2, st
d::__1::allocator<llvm::BPFTargetMachine::adjustPassManager(llvm::PassManagerBuilder&)::$_2>,
void (llvm::PassManagerBuilder const&, llvm::legac
y::PassManagerBase&)>::operator()(llvm::PassManagerBuilder const&,
llvm::legacy::PassManagerBase&)) in archive
/usr/obj/srcpool/src/rstone/freeb
sd/amd64.amd64/tmp/obj-tools/lib/clang/libllvm/libllvm.a

ld: error: undefined symbol:
llvm::BPFAdjustOptPass::run(llvm::Module&,
llvm::AnalysisManager<llvm::Module>&)
>>> referenced by BPFTargetMachine.cpp
>>>               BPFTargetMachine.o:(llvm::detail::PassModel<llvm::Module, llvm::BPFAdjustOptPass, llvm::PreservedAnalyses, llvm::AnalysisManag
er<llvm::Module> >::run(llvm::Module&,
llvm::AnalysisManager<llvm::Module>&)) in archive
/usr/obj/srcpool/src/rstone/freebsd/amd64.amd64/tmp/obj
-tools/lib/clang/libllvm/libllvm.a



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFMmRNxSHPN41gQS5z53FeGRabQ6O4vT0_gi%2BBQbd1vRjKkS9g>