davezarzycki added a comment. This breaks building libclang on Fedora 32 with clang 10.0 and lld 10.0. Do you mind if I revert this tomorrow if a quick fix cannot be found? Here is the relevant diagnostics:
FAILED: lib64/libclang.so.11 : && /usr/bin/clang++ -fPIC -Werror=switch -stdlib=libc++ -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 -Wimplicit-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-types -O2 -DNDEBUG -stdlib=libc++ -Wl,-z,defs -Wl,-z,nodelete -fuse-ld=lld -Wl,--color-diagnostics -Wl,-O3 -Wl,--gc-sections -Wl,--version-script,"/tmp/_update_lc/r/tools/clang/tools/libclang/libclang.exports" -shared -Wl,-soname,libclang.so.11git -o lib64/libclang.so.11 tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndex.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndexCXX.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndexCodeCompletion.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndexDiagnostic.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndexHigh.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndexInclusionStack.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndexUSRs.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CIndexer.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXComment.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXCursor.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXIndexDataConsumer.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXCompilationDatabase.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXLoadedDiagnostic.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXSourceLocation.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXStoredDiagnostic.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXString.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/CXType.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/Indexing.cpp.o tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/FatalErrorHandler.cpp.o -Wl,-rpath,"\$ORIGIN/../lib64" lib64/libclangAST.a lib64/libclangBasic.a lib64/libclangDriver.a lib64/libclangFrontend.a lib64/libclangIndex.a lib64/libclangLex.a lib64/libclangSema.a lib64/libclangSerialization.a lib64/libclangTooling.a lib64/libLLVMSupport.a lib64/libclangARCMigrate.a -ldl lib64/libLLVMX86CodeGen.a lib64/libLLVMX86AsmParser.a lib64/libLLVMX86Desc.a lib64/libLLVMX86Disassembler.a lib64/libLLVMX86Info.a lib64/libLLVMAArch64CodeGen.a lib64/libLLVMAArch64AsmParser.a lib64/libLLVMAArch64Desc.a lib64/libLLVMAArch64Disassembler.a lib64/libLLVMAArch64Info.a lib64/libLLVMAArch64Utils.a lib64/libLLVMPowerPCCodeGen.a lib64/libLLVMPowerPCAsmParser.a lib64/libLLVMPowerPCDesc.a lib64/libLLVMPowerPCDisassembler.a lib64/libLLVMPowerPCInfo.a lib64/libLLVMRISCVCodeGen.a lib64/libLLVMRISCVAsmParser.a lib64/libLLVMRISCVDesc.a lib64/libLLVMRISCVDisassembler.a lib64/libLLVMRISCVInfo.a lib64/libLLVMRISCVUtils.a lib64/libLLVMCore.a lib64/libLLVMSupport.a lib64/libclangFormat.a lib64/libclangToolingInclusions.a lib64/libclangToolingCore.a lib64/libclangFrontend.a lib64/libclangDriver.a lib64/libLLVMOption.a lib64/libclangParse.a lib64/libclangSerialization.a lib64/libclangSema.a lib64/libclangEdit.a lib64/libclangRewrite.a lib64/libclangAnalysis.a lib64/libclangASTMatchers.a lib64/libclangAST.a lib64/libclangLex.a lib64/libclangBasic.a lib64/libLLVMFrontendOpenMP.a lib64/libLLVMCFGuard.a lib64/libLLVMAArch64Desc.a lib64/libLLVMAArch64Info.a lib64/libLLVMAArch64Utils.a lib64/libLLVMAsmPrinter.a lib64/libLLVMDebugInfoDWARF.a lib64/libLLVMGlobalISel.a lib64/libLLVMSelectionDAG.a lib64/libLLVMCodeGen.a lib64/libLLVMScalarOpts.a lib64/libLLVMAggressiveInstCombine.a lib64/libLLVMInstCombine.a lib64/libLLVMBitWriter.a lib64/libLLVMTransformUtils.a lib64/libLLVMTarget.a lib64/libLLVMAnalysis.a lib64/libLLVMProfileData.a lib64/libLLVMObject.a lib64/libLLVMBitReader.a lib64/libLLVMCore.a lib64/libLLVMRemarks.a lib64/libLLVMBitstreamReader.a lib64/libLLVMTextAPI.a lib64/libLLVMMCParser.a lib64/libLLVMMCDisassembler.a lib64/libLLVMMC.a lib64/libLLVMBinaryFormat.a lib64/libLLVMDebugInfoCodeView.a lib64/libLLVMDebugInfoMSF.a lib64/libLLVMSupport.a -lz -lrt -ldl -ltinfo -lpthread -lm /usr/lib64/libz3.so lib64/libLLVMDemangle.a && : ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32S against symbol: vtable for clang::TextDiagnosticBuffer in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in lib64/libclangFrontend.a(TextDiagnosticBuffer.cpp.o) >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappings) ld.lld: error: can't create dynamic relocation R_X86_64_32S against symbol: vtable for clang::TextDiagnosticBuffer in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in lib64/libclangFrontend.a(TextDiagnosticBuffer.cpp.o) >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang::TextDiagnosticBuffer::~TextDiagnosticBuffer()) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappingsFromFileList) ld.lld: error: can't create dynamic relocation R_X86_64_32S against symbol: vtable for clang::TextDiagnosticBuffer in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in lib64/libclangFrontend.a(TextDiagnosticBuffer.cpp.o) >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappingsFromFileList) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappingsFromFileList) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappingsFromFileList) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o >>> referenced by ARCMigrate.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/ARCMigrate.cpp.o:(clang_getRemappingsFromFileList) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o >>> referenced by BuildSystem.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o:(clang_VirtualFileOverlay_addFileMapping) ld.lld: error: can't create dynamic relocation R_X86_64_32S against symbol: vtable for llvm::raw_svector_ostream in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in lib64/libLLVMSupport.a(raw_ostream.cpp.o) >>> referenced by BuildSystem.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o:(clang_VirtualFileOverlay_writeToBuffer) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o >>> referenced by BuildSystem.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o:(clang_VirtualFileOverlay_writeToBuffer) ld.lld: error: can't create dynamic relocation R_X86_64_32S against symbol: vtable for llvm::raw_svector_ostream in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in lib64/libLLVMSupport.a(raw_ostream.cpp.o) >>> referenced by BuildSystem.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o:(clang_ModuleMapDescriptor_writeToBuffer) ld.lld: error: can't create dynamic relocation R_X86_64_32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o >>> referenced by BuildSystem.cpp >>> >>> >>> tools/clang/tools/libclang/CMakeFiles/obj.libclang.dir/BuildSystem.cpp.o:(clang_ModuleMapDescriptor_writeToBuffer) ld.lld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors) clang-10: error: linker command failed with exit code 1 (use -v to see invocation) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75068/new/ https://reviews.llvm.org/D75068 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits