[PATCH] D85715: [clangd] Attempt to allow gRPC & Proobuf static linking
Kirill Bobyrev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 11 02:31:56 PDT 2020
kbobyrev added a comment.
Error log on Linux:
[1/5] Linking CXX executable bin/clangd-index-server
FAILED: bin/clangd-index-server
: && /usr/bin/clang++ -gmlt -O1 -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -W
implicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -Wno-nested-anon-type
s -O3 -fuse-ld=lld -Wl,--color-diagnostics -Wl,-allow-shlib-undefined -Wl,-O3 -Wl,--gc-sections tools/clang/tools/extra/clangd/index/remote/server/CMakeFiles/clangd-index-server.dir/Server.cpp.o -o bin/clangd-index-server -Wl,-rpath,"
\$ORIGIN/../lib" lib/libLLVMSupport.a -lpthread lib/libclangDaemon.a lib/libRemoteIndexProtos.a lib/libclangdRemoteMarshalling.a /usr/lib/x86_64-linux-gnu/libgrpc++.a lib/libclangDaemon.a lib/libclangTidyAndroidModule.a lib/libclan
gTidyAbseilModule.a lib/libclangTidyBoostModule.a lib/libclangTidyCERTModule.a lib/libclangTidyDarwinModule.a lib/libclangTidyFuchsiaModule.a lib/libclangTidyHICPPModule.a lib/libclangTidyBugproneModule.a lib/libclangTidyCppCoreGuide
linesModule.a lib/libclangTidyGoogleModule.a lib/libclangTidyLinuxKernelModule.a lib/libclangTidyLLVMModule.a lib/libclangTidyLLVMLibcModule.a lib/libclangTidyMiscModule.a lib/libclangTidyModernizeModule.a lib/libclangTidyObjCModule.
a lib/libclangTidyOpenMPModule.a lib/libclangTidyPerformanceModule.a lib/libclangTidyPortabilityModule.a lib/libclangTidyReadabilityModule.a lib/libclangTidyZirconModule.a lib/libclangTidyMPIModule.a lib/libclangTidyUtils.a lib/libc
langTidy.a lib/libclangStaticAnalyzerFrontend.a lib/libclangTransformer.a lib/libclangStaticAnalyzerCheckers.a lib/libclangStaticAnalyzerCore.a lib/libclangCrossTU.a lib/libclangTooling.a lib/libclangToolingRefactoring.a lib/libclan
gIndex.a lib/libclangFormat.a lib/libclangToolingInclusions.a lib/libclangToolingSyntax.a lib/libclangFrontend.a lib/libclangDriver.a lib/libclangSerialization.a lib/libclangParse.a lib/libclangSema.a lib/libclangAnalysis.a lib/li
bclangASTMatchers.a lib/libclangEdit.a lib/libclangToolingCore.a lib/libclangAST.a lib/libclangRewrite.a lib/libclangLex.a lib/libclangBasic.a lib/libRemoteIndexProtos.a /usr/lib/x86_64-linux-gnu/libgrpc++.a lib/libclangdSupport.a
lib/libLLVMAArch64Info.a lib/libLLVMAMDGPUInfo.a lib/libLLVMARMInfo.a lib/libLLVMAVRInfo.a lib/libLLVMBPFInfo.a lib/libLLVMHexagonInfo.a lib/libLLVMLanaiInfo.a lib/libLLVMMipsInfo.a lib/libLLVMMSP430Info.a lib/libLLVMNVPTXInfo.a
lib/libLLVMPowerPCInfo.a lib/libLLVMRISCVInfo.a lib/libLLVMSparcInfo.a lib/libLLVMSystemZInfo.a lib/libLLVMWebAssemblyInfo.a lib/libLLVMX86Info.a lib/libLLVMXCoreInfo.a lib/libLLVMFrontendOpenMP.a lib/libLLVMTransformUtils.a lib/li
bLLVMAnalysis.a lib/libLLVMProfileData.a lib/libLLVMObject.a lib/libLLVMBitReader.a lib/libLLVMCore.a lib/libLLVMRemarks.a lib/libLLVMBitstreamReader.a lib/libLLVMMCParser.a lib/libLLVMMC.a lib/libLLVMDebugInfoCodeView.a lib/libLL
VMDebugInfoMSF.a lib/libLLVMTextAPI.a lib/libLLVMBinaryFormat.a lib/libLLVMOption.a lib/libLLVMSupport.a -lz -lrt -ldl -ltinfo -lpthread -lm lib/libLLVMDemangle.a /usr/lib/x86_64-linux-gnu/libprotobuf.a && :
ld.lld: error: undefined symbol: grpc_server_add_insecure_http2_port
>>> referenced by insecure_server_credentials.o:(.text+0x27) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_inproc_channel_create(grpc_server*, grpc_channel_args*, void*)
>>> referenced by server_cc.o:(grpc_impl::Server::InProcessChannel(grpc_impl::ChannelArguments const&)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by server_cc.o:(grpc_impl::Server::experimental_type::InProcessChannelWithInterceptors(grpc_impl::ChannelArguments const&, std::vector<std::unique_ptr<grpc::experimental::ClientInterceptorFactoryInterface, std::default_delete
<grpc::experimental::ClientInterceptorFactoryInterface> >, std::allocator<std::unique_ptr<grpc::experimental::ClientInterceptorFactoryInterface, std::default_delete<grpc::experimental::ClientInterceptorFactoryInterface> > > >)) in archive /
usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_init
>>> referenced by server_cc.o:(grpc::internal::GrpcLibrary::init()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by core_codegen.o:(grpc::CoreCodegen::grpc_init()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_shutdown
>>> referenced by server_cc.o:(grpc::internal::GrpcLibrary::shutdown()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by core_codegen.o:(grpc::CoreCodegen::grpc_shutdown()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(.text+0x2E1) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_census_call_set_context
>>> referenced by channel_cc.o:(grpc_impl::Channel::CreateCallInternal(grpc::internal::RpcMethod const&, grpc_impl::ClientContext*, grpc_impl::CompletionQueue*, unsigned long)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_census_call_get_context
>>> referenced by server_context.o:(grpc_impl::ServerContextBase::census_context() const) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[2/5] Linking CXX executable bin/dexp
FAILED: bin/dexp
: && /usr/bin/clang++ -gmlt -O1 -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -W
implicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -Wno-nested-anon-type
s -O3 -fuse-ld=lld -Wl,--color-diagnostics -Wl,-allow-shlib-undefined -Wl,-O3 -Wl,--gc-sections tools/clang/tools/extra/clangd/index/dex/dexp/CMakeFiles/dexp.dir/Dexp.cpp.o -o bin/dexp -Wl,-rpath,"\$ORIGIN/../lib" lib/libLLVMLineEdit
or.a lib/libLLVMSupport.a -lpthread lib/libclangBasic.a lib/libclangDaemon.a lib/libclangdRemoteIndex.a -ledit lib/libclangdRemoteMarshalling.a lib/libclangDaemon.a lib/libclangTidyAndroidModule.a lib/libclangTidyAbseilModule.a l
ib/libclangTidyBoostModule.a lib/libclangTidyCERTModule.a lib/libclangTidyDarwinModule.a lib/libclangTidyFuchsiaModule.a lib/libclangTidyHICPPModule.a lib/libclangTidyBugproneModule.a lib/libclangTidyCppCoreGuidelinesModule.a lib/lib
clangTidyGoogleModule.a lib/libclangTidyLinuxKernelModule.a lib/libclangTidyLLVMModule.a lib/libclangTidyLLVMLibcModule.a lib/libclangTidyMiscModule.a lib/libclangTidyModernizeModule.a lib/libclangTidyObjCModule.a lib/libclangTidyOpe
nMPModule.a lib/libclangTidyPerformanceModule.a lib/libclangTidyPortabilityModule.a lib/libclangTidyReadabilityModule.a lib/libclangTidyZirconModule.a lib/libclangTidyMPIModule.a lib/libclangTidyUtils.a lib/libclangTidy.a lib/libcla
ngStaticAnalyzerFrontend.a lib/libclangTransformer.a lib/libclangStaticAnalyzerCheckers.a lib/libclangStaticAnalyzerCore.a lib/libclangCrossTU.a lib/libclangTooling.a lib/libclangToolingRefactoring.a lib/libclangIndex.a lib/libclang
Format.a lib/libclangToolingInclusions.a lib/libclangToolingSyntax.a lib/libclangFrontend.a lib/libclangDriver.a lib/libclangSerialization.a lib/libclangParse.a lib/libclangSema.a lib/libclangAnalysis.a lib/libclangASTMatchers.a l
ib/libclangEdit.a lib/libclangToolingCore.a lib/libclangAST.a lib/libclangRewrite.a lib/libclangLex.a lib/libclangBasic.a lib/libclangdSupport.a lib/libRemoteIndexProtos.a lib/libLLVMAArch64Info.a lib/libLLVMAMDGPUInfo.a lib/libLL
VMARMInfo.a lib/libLLVMAVRInfo.a lib/libLLVMBPFInfo.a lib/libLLVMHexagonInfo.a lib/libLLVMLanaiInfo.a lib/libLLVMMipsInfo.a lib/libLLVMMSP430Info.a lib/libLLVMNVPTXInfo.a lib/libLLVMPowerPCInfo.a lib/libLLVMRISCVInfo.a lib/libLLVM
SparcInfo.a lib/libLLVMSystemZInfo.a lib/libLLVMWebAssemblyInfo.a lib/libLLVMX86Info.a lib/libLLVMXCoreInfo.a lib/libLLVMFrontendOpenMP.a lib/libLLVMTransformUtils.a lib/libLLVMAnalysis.a lib/libLLVMProfileData.a lib/libLLVMObject.
a lib/libLLVMBitReader.a lib/libLLVMCore.a lib/libLLVMRemarks.a lib/libLLVMBitstreamReader.a lib/libLLVMMCParser.a lib/libLLVMMC.a lib/libLLVMDebugInfoCodeView.a lib/libLLVMDebugInfoMSF.a lib/libLLVMTextAPI.a lib/libLLVMBinaryForm
at.a lib/libLLVMOption.a lib/libLLVMSupport.a -lz -lrt -ldl -ltinfo -lpthread -lm lib/libLLVMDemangle.a /usr/lib/x86_64-linux-gnu/libprotobuf.a /usr/lib/x86_64-linux-gnu/libgrpc++.a && :
ld.lld: error: undefined symbol: grpc_insecure_channel_create
>>> referenced by insecure_credentials.o:(.text+0x1BC) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by insecure_credentials.o:(.text+0x30F) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_census_call_set_context
>>> referenced by channel_cc.o:(grpc_impl::Channel::CreateCallInternal(grpc::internal::RpcMethod const&, grpc_impl::ClientContext*, grpc_impl::CompletionQueue*, unsigned long)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_init
>>> referenced by channel_cc.o:(grpc::internal::GrpcLibrary::init()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel_cc.o:(grpc::GrpcLibraryCodegen::GrpcLibraryCodegen(bool)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by core_codegen.o:(grpc::CoreCodegen::grpc_init()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_shutdown
>>> referenced by channel_cc.o:(grpc::internal::GrpcLibrary::shutdown()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel_cc.o:(grpc::GrpcLibraryCodegen::~GrpcLibraryCodegen()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by core_codegen.o:(grpc::CoreCodegen::grpc_shutdown()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(.text+0x2E1) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[3/5] Linking CXX executable bin/clangd
FAILED: bin/clangd
: && /usr/bin/clang++ -gmlt -O1 -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -W
implicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -Wno-nested-anon-type
s -O3 -fuse-ld=lld -Wl,--color-diagnostics -Wl,-allow-shlib-undefined -Wl,-O3 -Wl,--gc-sections tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/AddUsing.cpp.o tools/clang/tools/extra/clangd/refactor/t
weaks/CMakeFiles/obj.clangDaemonTweaks.dir/AnnotateHighlightings.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DumpAST.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaem
onTweaks.dir/DefineInline.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DefineOutline.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExpandAutoType.cpp.o
tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExpandMacro.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExtractFunction.cpp.o tools/clang/tools/extra/clangd/
refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExtractVariable.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ObjCLocalizeStringLiteral.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CM
akeFiles/obj.clangDaemonTweaks.dir/RawStringLiteral.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/RemoveUsingNamespace.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaem
onTweaks.dir/SwapIfBranches.cpp.o tools/clang/tools/extra/clangd/tool/CMakeFiles/clangd.dir/ClangdMain.cpp.o -o bin/clangd -Wl,-rpath,"\$ORIGIN/../lib" lib/libLLVMSupport.a lib/libLLVMAArch64Info.a lib/libLLVMAMDGPUInfo.a lib/libLLVMA
RMInfo.a lib/libLLVMAVRInfo.a lib/libLLVMBPFInfo.a lib/libLLVMHexagonInfo.a lib/libLLVMLanaiInfo.a lib/libLLVMMipsInfo.a lib/libLLVMMSP430Info.a lib/libLLVMNVPTXInfo.a lib/libLLVMPowerPCInfo.a lib/libLLVMRISCVInfo.a lib/libLLVMSpa
rcInfo.a lib/libLLVMSystemZInfo.a lib/libLLVMWebAssemblyInfo.a lib/libLLVMX86Info.a lib/libLLVMXCoreInfo.a lib/libLLVMFrontendOpenMP.a lib/libLLVMOption.a -lpthread lib/libclangAST.a lib/libclangBasic.a lib/libclangFormat.a lib/l
ibclangFrontend.a lib/libclangLex.a lib/libclangSema.a lib/libclangTooling.a lib/libclangToolingCore.a lib/libclangToolingRefactoring.a lib/libclangToolingSyntax.a lib/libclangdRemoteIndex.a lib/libclangTidy.a lib/libclangDaemon.a
lib/libclangdSupport.a lib/libclangdRemoteMarshalling.a lib/libclangDaemon.a lib/libclangToolingSyntax.a lib/libclangTidyAndroidModule.a lib/libclangTidyAbseilModule.a lib/libclangTidyBoostModule.a lib/libclangTidyCERTModule.a lib/
libclangTidyDarwinModule.a lib/libclangTidyFuchsiaModule.a lib/libclangTidyHICPPModule.a lib/libclangTidyBugproneModule.a lib/libclangTidyCppCoreGuidelinesModule.a lib/libclangTidyGoogleModule.a lib/libclangTidyLinuxKernelModule.a li
b/libclangTidyLLVMModule.a lib/libclangTidyLLVMLibcModule.a lib/libclangTidyMiscModule.a lib/libclangTidyModernizeModule.a lib/libclangTidyObjCModule.a lib/libclangTidyOpenMPModule.a lib/libclangTidyPerformanceModule.a lib/libclangTi
dyPortabilityModule.a lib/libclangTidyReadabilityModule.a lib/libclangTidyZirconModule.a lib/libclangTidyMPIModule.a lib/libclangTidyUtils.a lib/libclangTidy.a lib/libclangTooling.a lib/libclangStaticAnalyzerFrontend.a lib/libclangS
taticAnalyzerCheckers.a lib/libclangStaticAnalyzerCore.a lib/libclangCrossTU.a lib/libclangTransformer.a lib/libclangToolingRefactoring.a lib/libclangIndex.a lib/libclangFormat.a lib/libclangToolingInclusions.a lib/libclangFrontend.
a lib/libclangDriver.a lib/libclangParse.a lib/libclangToolingCore.a lib/libclangSerialization.a lib/libclangSema.a lib/libclangEdit.a lib/libclangAnalysis.a lib/libclangRewrite.a lib/libclangASTMatchers.a lib/libclangAST.a lib/l
ibclangLex.a lib/libclangBasic.a lib/libclangdSupport.a lib/libRemoteIndexProtos.a lib/libLLVMAArch64Info.a lib/libLLVMAMDGPUInfo.a lib/libLLVMARMInfo.a lib/libLLVMAVRInfo.a lib/libLLVMBPFInfo.a lib/libLLVMHexagonInfo.a lib/libLLV
MLanaiInfo.a lib/libLLVMMipsInfo.a lib/libLLVMMSP430Info.a lib/libLLVMNVPTXInfo.a lib/libLLVMPowerPCInfo.a lib/libLLVMRISCVInfo.a lib/libLLVMSparcInfo.a lib/libLLVMSystemZInfo.a lib/libLLVMWebAssemblyInfo.a lib/libLLVMX86Info.a li
b/libLLVMXCoreInfo.a lib/libLLVMFrontendOpenMP.a lib/libLLVMTransformUtils.a lib/libLLVMAnalysis.a lib/libLLVMProfileData.a lib/libLLVMObject.a lib/libLLVMBitReader.a lib/libLLVMCore.a lib/libLLVMRemarks.a lib/libLLVMBitstreamReade
r.a lib/libLLVMMCParser.a lib/libLLVMMC.a lib/libLLVMDebugInfoCodeView.a lib/libLLVMDebugInfoMSF.a lib/libLLVMTextAPI.a lib/libLLVMBinaryFormat.a lib/libLLVMOption.a lib/libLLVMSupport.a -lz -lrt -ldl -ltinfo -lpthread -lm li
b/libLLVMDemangle.a /usr/lib/x86_64-linux-gnu/libprotobuf.a /usr/lib/x86_64-linux-gnu/libgrpc++.a && :
ld.lld: error: undefined symbol: grpc_insecure_channel_create
>>> referenced by insecure_credentials.o:(.text+0x1BC) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by insecure_credentials.o:(.text+0x30F) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_census_call_set_context
>>> referenced by channel_cc.o:(grpc_impl::Channel::CreateCallInternal(grpc::internal::RpcMethod const&, grpc_impl::ClientContext*, grpc_impl::CompletionQueue*, unsigned long)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_init
>>> referenced by channel_cc.o:(grpc::internal::GrpcLibrary::init()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel_cc.o:(grpc::GrpcLibraryCodegen::GrpcLibraryCodegen(bool)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by core_codegen.o:(grpc::CoreCodegen::grpc_init()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
ld.lld: error: undefined symbol: grpc_shutdown
>>> referenced by channel_cc.o:(grpc::internal::GrpcLibrary::shutdown()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel_cc.o:(grpc::GrpcLibraryCodegen::~GrpcLibraryCodegen()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by core_codegen.o:(grpc::CoreCodegen::grpc_shutdown()) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(.text+0x2E1) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
>>> referenced by channel.o:(grpc_channel_create(char const*, grpc_channel_args const*, grpc_channel_stack_type, grpc_transport*, grpc_resource_user*)) in archive /usr/lib/x86_64-linux-gnu/libgrpc++.a
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[4/5] Linking CXX executable tools/clang/tools/extra/clangd/unittests/ClangdTests
ninja: build stopped: subcommand failed.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D85715/new/
https://reviews.llvm.org/D85715
More information about the llvm-commits
mailing list