rust-lang / lldb

No longer used, use https://github.com/rust-lang/llvm-project instead
Other
14 stars 6 forks source link

Fails to build on debian #27

Closed jeremysalwen closed 5 years ago

jeremysalwen commented 5 years ago

Following the directions at https://lldb.llvm.org/build.html#BuildingLldbOnLinux I attempted to build lldb.

llvm branch is rust-llvm-release-6-0-0 509f29ac17874394acf4d49d6bae3cd93c652aa1 clang is 2f27999df400d17b33cdd412fdd606a88208dfcc (copied from the wiki) lldb branch is rust 832406ba3d682c1c59f801e5ee836bdbc26e8bd0

Linking fails with

$ ninja lldb
[1/7] Linking CXX executable bin/lldb-server
FAILED: bin/lldb-server 
: && /usr/bin/c++  -fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wno-maybe-uninitialized -Wdelete-non-virtual-dtor -Wno-comment -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-deprecated-register -Wno-vla-extension -g  -Wl,-allow-shlib-undefined    -Wl,-rpath-link,/home/jeremysalwen/build_llvm/./lib tools/lldb/tools/lldb-server/CMakeFiles/lldb-server.dir/Acceptor.cpp.o tools/lldb/tools/lldb-server/CMakeFiles/lldb-server.dir/lldb-gdbserver.cpp.o tools/lldb/tools/lldb-server/CMakeFiles/lldb-server.dir/lldb-platform.cpp.o tools/lldb/tools/lldb-server/CMakeFiles/lldb-server.dir/lldb-server.cpp.o tools/lldb/tools/lldb-server/CMakeFiles/lldb-server.dir/LLDBServerUtilities.cpp.o  -o bin/lldb-server  -Wl,-rpath,"\$ORIGIN/../lib" lib/libLLVMSupport.a -lpthread lib/liblldbBase.a lib/liblldbCore.a lib/liblldbHost.a lib/liblldbInitialization.a lib/liblldbInterpreter.a lib/liblldbPluginProcessLinux.a lib/liblldbPluginInstructionARM.a lib/liblldbPluginInstructionMIPS.a lib/liblldbPluginInstructionMIPS64.a lib/libLLVMMipsCodeGen.a lib/libLLVMAsmPrinter.a lib/libLLVMSelectionDAG.a lib/libLLVMMipsAsmParser.a lib/libLLVMMipsDesc.a lib/libLLVMMipsAsmPrinter.a lib/libLLVMMipsDisassembler.a lib/libLLVMMCDisassembler.a lib/libLLVMMipsInfo.a lib/liblldbPluginObjectContainerMachOArchive.a lib/liblldbPluginObjectFilePECOFF.a lib/liblldbPluginProcessGDBRemote.a lib/liblldbPluginPlatformMacOSX.a lib/liblldbPluginPlatformPOSIX.a lib/liblldbPluginProcessPOSIX.a lib/liblldbCore.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbBreakpoint.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbCommands.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbCore.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbBreakpoint.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbCommands.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbCore.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbBreakpoint.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbCommands.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbCore.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbBreakpoint.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbCommands.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbBase.a lib/libclangCodeGen.a lib/libLLVMCoroutines.a lib/libLLVMCoverage.a lib/libLLVMLTO.a lib/libLLVMObjCARCOpts.a lib/libLLVMPasses.a lib/libLLVMCodeGen.a lib/libclangRewriteFrontend.a lib/libclangFrontend.a lib/libclangParse.a lib/libclangDriver.a lib/libLLVMOption.a lib/libclangRewrite.a lib/libclangSerialization.a lib/libclangSema.a lib/libclangEdit.a lib/libclangAnalysis.a lib/libLLVMipo.a lib/libLLVMBitWriter.a lib/libLLVMIRReader.a lib/libLLVMAsmParser.a lib/libLLVMInstrumentation.a lib/libLLVMLinker.a lib/libLLVMScalarOpts.a lib/libLLVMInstCombine.a lib/libLLVMVectorize.a lib/libLLVMTransformUtils.a lib/libLLVMMCJIT.a lib/libLLVMExecutionEngine.a lib/libLLVMRuntimeDyld.a lib/libLLVMTarget.a lib/libLLVMAnalysis.a lib/libLLVMProfileData.a lib/libLLVMDebugInfoDWARF.a lib/libLLVMDebugInfoPDB.a lib/libLLVMObject.a lib/libLLVMBitReader.a lib/libLLVMMCParser.a lib/libLLVMDebugInfoCodeView.a lib/libLLVMDebugInfoMSF.a lib/libclangAST.a lib/libclangLex.a lib/libclangBasic.a lib/libLLVMCore.a lib/libLLVMMC.a lib/liblldbUtility.a lib/libLLVMBinaryFormat.a -ledit /usr/lib/x86_64-linux-gnu/libpython2.7.so /usr/lib/x86_64-linux-gnu/libxml2.so -lpthread -lcurses /usr/lib/x86_64-linux-gnu/libform.so /usr/lib/x86_64-linux-gnu/libpanel.so lib/libLLVMSupport.a -lz -lrt -lpthread -ldl -ltinfo -lm lib/libLLVMDemangle.a && :
lib/liblldbPluginSymbolFileDWARF.a(DWARFDefines.cpp.o): In function `lldb_private::DW_DSC_value_to_name(unsigned int)':
/home/jeremysalwen/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp:478: undefined reference to `llvm::dwarf::DiscriminantString(unsigned int)'
collect2: error: ld returned 1 exit status
[2/7] Linking CXX shared library lib/liblldb.so.6.0.1
FAILED: lib/liblldb.so.6.0.1 
: && /usr/bin/c++ -fPIC -fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wno-maybe-uninitialized -Wdelete-non-virtual-dtor -Wno-comment -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-deprecated-register -Wno-vla-extension -g  -Wl,-z,defs -Wl,-z,nodelete   -Wl,-rpath-link,/home/jeremysalwen/build_llvm/./lib   -Wl,--version-script,/home/jeremysalwen/build_llvm/tools/lldb/source/API/liblldb.exports -shared -Wl,-soname,liblldb.so.6 -o lib/liblldb.so.6.0.1 tools/lldb/source/API/CMakeFiles/liblldb.dir/SBAddress.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBAttachInfo.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBBlock.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBBreakpoint.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBBreakpointLocation.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBBreakpointName.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBBreakpointOptionCommon.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBBroadcaster.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBCommandInterpreter.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBCommandReturnObject.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBCommunication.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBCompileUnit.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBData.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBDebugger.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBDeclaration.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBError.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBEvent.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBExecutionContext.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBExpressionOptions.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBFileSpec.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBFileSpecList.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBFrame.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBFunction.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBHostOS.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBInstruction.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBInstructionList.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBLanguageRuntime.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBLaunchInfo.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBLineEntry.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBListener.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBMemoryRegionInfo.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBMemoryRegionInfoList.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBModule.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBModuleSpec.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBPlatform.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBProcess.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBProcessInfo.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBQueue.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBQueueItem.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBSection.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBSourceManager.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBStream.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBStringList.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBStructuredData.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBSymbol.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBSymbolContext.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBSymbolContextList.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTarget.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBThread.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBThreadCollection.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBThreadPlan.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTrace.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTraceOptions.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBType.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTypeCategory.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTypeEnumMember.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTypeFilter.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTypeFormat.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTypeNameSpecifier.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTypeSummary.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBTypeSynthetic.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBValue.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBValueList.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBVariablesOptions.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBWatchpoint.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SBUnixSignals.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/SystemInitializerFull.cpp.o tools/lldb/source/API/CMakeFiles/liblldb.dir/__/__/scripts/LLDBWrapPython.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib" lib/liblldbBase.a lib/liblldbBreakpoint.a lib/liblldbCore.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbHost.a lib/liblldbInitialization.a lib/liblldbInterpreter.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbUtility.a lib/liblldbPluginABISysV_arm.a lib/liblldbPluginABISysV_arm64.a lib/liblldbPluginABISysV_hexagon.a lib/liblldbPluginABISysV_ppc.a lib/liblldbPluginABISysV_ppc64.a lib/liblldbPluginABISysV_mips.a lib/liblldbPluginABISysV_mips64.a lib/liblldbPluginABISysV_s390x.a lib/liblldbPluginABISysV_i386.a lib/liblldbPluginABISysV_x86_64.a lib/liblldbPluginABIMacOSX_i386.a lib/liblldbPluginABIMacOSX_arm.a lib/liblldbPluginABIMacOSX_arm64.a lib/liblldbPluginArchitectureArm.a lib/liblldbPluginDisassemblerLLVM.a lib/liblldbPluginDynamicLoaderMacOSXDYLD.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbPluginDynamicLoaderStatic.a lib/liblldbPluginDynamicLoaderHexagonDYLD.a lib/liblldbPluginDynamicLoaderWindowsDYLD.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginInstructionARM.a lib/liblldbPluginInstructionARM64.a lib/liblldbPluginInstructionMIPS.a lib/liblldbPluginInstructionMIPS64.a lib/liblldbPluginInstrumentationRuntimeASan.a lib/liblldbPluginInstrumentationRuntimeMainThreadChecker.a lib/liblldbPluginInstrumentationRuntimeTSan.a lib/liblldbPluginInstrumentationRuntimeUBSan.a lib/liblldbPluginJITLoaderGDB.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginGoLanguage.a lib/liblldbPluginJavaLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginObjCPlusPlusLanguage.a lib/liblldbPluginOCamlLanguage.a lib/liblldbPluginRustLanguage.a lib/liblldbPluginCXXItaniumABI.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginLanguageRuntimeGo.a lib/liblldbPluginLanguageRuntimeJava.a lib/liblldbPluginRenderScriptRuntime.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginMemoryHistoryASan.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectContainerMachOArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbPluginObjectFileMachO.a lib/liblldbPluginObjectFilePECOFF.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginOSGo.a lib/liblldbPluginOSPython.a lib/liblldbPluginPlatformLinux.a lib/liblldbPluginPlatformFreeBSD.a lib/liblldbPluginPlatformNetBSD.a lib/liblldbPluginPlatformOpenBSD.a lib/liblldbPluginPlatformMacOSX.a lib/liblldbPluginPlatformWindows.a lib/liblldbPluginPlatformPOSIX.a lib/liblldbPluginPlatformGDB.a lib/liblldbPluginPlatformKalimba.a lib/liblldbPluginPlatformAndroid.a lib/liblldbPluginProcessLinux.a lib/liblldbPluginProcessPOSIX.a lib/liblldbPluginProcessGDBRemote.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginProcessMinidump.a lib/liblldbPluginScriptInterpreterNone.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginStructuredDataDarwinLog.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFileSymtab.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbPluginSystemRuntimeMacOSX.a lib/liblldbPluginSymbolVendorELF.a lib/liblldbPluginUnwindAssemblyInstEmulation.a lib/liblldbPluginUnwindAssemblyX86.a lib/libLLVMSupport.a lib/liblldbPluginScriptInterpreterNone.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginPlatformMacOSX.a lib/libLLVMAArch64CodeGen.a lib/libLLVMAArch64AsmParser.a lib/libLLVMAArch64Disassembler.a lib/libLLVMAArch64Desc.a lib/libLLVMAArch64AsmPrinter.a lib/libLLVMAArch64Info.a lib/libLLVMAArch64Utils.a lib/libLLVMAMDGPUCodeGen.a lib/libLLVMAMDGPUAsmParser.a lib/libLLVMAMDGPUDisassembler.a lib/libLLVMAMDGPUDesc.a lib/libLLVMAMDGPUAsmPrinter.a lib/libLLVMAMDGPUInfo.a lib/libLLVMAMDGPUUtils.a lib/libLLVMARMCodeGen.a lib/libLLVMARMAsmParser.a lib/libLLVMARMDisassembler.a lib/libLLVMARMDesc.a lib/libLLVMARMAsmPrinter.a lib/libLLVMARMInfo.a lib/libLLVMARMUtils.a lib/libLLVMBPFCodeGen.a lib/libLLVMBPFAsmParser.a lib/libLLVMBPFDesc.a lib/libLLVMBPFAsmPrinter.a lib/libLLVMBPFDisassembler.a lib/libLLVMBPFInfo.a lib/libLLVMHexagonCodeGen.a lib/libLLVMHexagonAsmParser.a lib/libLLVMHexagonDisassembler.a lib/libLLVMHexagonDesc.a lib/libLLVMHexagonInfo.a lib/libLLVMLanaiCodeGen.a lib/libLLVMLanaiAsmParser.a lib/libLLVMLanaiDisassembler.a lib/libLLVMLanaiDesc.a lib/libLLVMLanaiAsmPrinter.a lib/libLLVMLanaiInfo.a lib/libLLVMMipsCodeGen.a lib/libLLVMMipsAsmParser.a lib/libLLVMMipsDesc.a lib/libLLVMMipsAsmPrinter.a lib/libLLVMMipsDisassembler.a lib/libLLVMMipsInfo.a lib/libLLVMMSP430CodeGen.a lib/libLLVMMSP430Desc.a lib/libLLVMMSP430AsmPrinter.a lib/libLLVMMSP430Info.a lib/libLLVMNVPTXCodeGen.a lib/libLLVMNVPTXDesc.a lib/libLLVMNVPTXAsmPrinter.a lib/libLLVMNVPTXInfo.a lib/libLLVMPowerPCCodeGen.a lib/libLLVMPowerPCAsmParser.a lib/libLLVMPowerPCDesc.a lib/libLLVMPowerPCAsmPrinter.a lib/libLLVMPowerPCDisassembler.a lib/libLLVMPowerPCInfo.a lib/libLLVMSparcCodeGen.a lib/libLLVMSparcAsmParser.a lib/libLLVMSparcDesc.a lib/libLLVMSparcAsmPrinter.a lib/libLLVMSparcDisassembler.a lib/libLLVMSparcInfo.a lib/libLLVMSystemZCodeGen.a lib/libLLVMSystemZAsmParser.a lib/libLLVMSystemZDisassembler.a lib/libLLVMSystemZDesc.a lib/libLLVMSystemZAsmPrinter.a lib/libLLVMSystemZInfo.a lib/libLLVMX86CodeGen.a lib/libLLVMGlobalISel.a lib/libLLVMX86AsmParser.a lib/libLLVMX86Desc.a lib/libLLVMX86AsmPrinter.a lib/libLLVMX86Disassembler.a lib/libLLVMX86Info.a lib/libLLVMX86Utils.a lib/libLLVMXCoreCodeGen.a lib/libLLVMAsmPrinter.a lib/libLLVMSelectionDAG.a lib/libLLVMXCoreDesc.a lib/libLLVMXCoreAsmPrinter.a lib/libLLVMXCoreDisassembler.a lib/libLLVMXCoreInfo.a lib/liblldbPluginPlatformLinux.a lib/liblldbPluginPlatformPOSIX.a lib/liblldbPluginPlatformGDB.a lib/liblldbBreakpoint.a lib/liblldbCore.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbCommands.a lib/liblldbBreakpoint.a lib/liblldbCore.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbCommands.a lib/liblldbBreakpoint.a lib/liblldbCore.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbCommands.a lib/liblldbBreakpoint.a lib/liblldbCore.a lib/liblldbDataFormatters.a lib/liblldbExpression.a lib/liblldbHost.a lib/liblldbInterpreter.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbPluginExpressionParserClang.a lib/liblldbPluginExpressionParserGo.a lib/liblldbPluginExpressionParserRust.a lib/liblldbPluginCPlusPlusLanguage.a lib/liblldbPluginObjCLanguage.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginLanguageRuntimeRust.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectFileELF.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginScriptInterpreterPython.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFilePDB.a lib/liblldbCommands.a lib/libclangCodeGen.a lib/libLLVMCoroutines.a lib/libLLVMCoverage.a lib/libLLVMLTO.a lib/libLLVMObjCARCOpts.a lib/libLLVMPasses.a lib/libLLVMCodeGen.a lib/libclangRewriteFrontend.a lib/libclangFrontend.a lib/libclangParse.a lib/libclangDriver.a lib/libLLVMOption.a lib/libclangRewrite.a lib/libclangSerialization.a lib/libclangSema.a lib/libclangEdit.a lib/libclangAnalysis.a lib/libLLVMipo.a lib/libLLVMIRReader.a lib/libLLVMAsmParser.a lib/libLLVMScalarOpts.a lib/libLLVMVectorize.a lib/libLLVMBitWriter.a lib/libLLVMInstCombine.a lib/libLLVMInstrumentation.a lib/libLLVMLinker.a lib/libLLVMTransformUtils.a lib/libLLVMMCJIT.a lib/libLLVMExecutionEngine.a lib/libLLVMRuntimeDyld.a lib/libLLVMTarget.a lib/libLLVMAnalysis.a lib/libLLVMProfileData.a lib/libLLVMDebugInfoDWARF.a lib/libclangAST.a lib/libclangLex.a lib/libclangBasic.a lib/libLLVMDebugInfoPDB.a lib/libLLVMObject.a lib/libLLVMBitReader.a lib/libLLVMCore.a lib/libLLVMMCParser.a lib/libLLVMDebugInfoCodeView.a lib/libLLVMDebugInfoMSF.a lib/liblldbBase.a lib/liblldbUtility.a lib/libLLVMBinaryFormat.a -ledit /usr/lib/x86_64-linux-gnu/libpython2.7.so /usr/lib/x86_64-linux-gnu/libxml2.so -lpthread -lcurses /usr/lib/x86_64-linux-gnu/libform.so /usr/lib/x86_64-linux-gnu/libpanel.so lib/libLLVMMCDisassembler.a lib/libLLVMMC.a lib/libLLVMSupport.a lib/libLLVMDemangle.a -lz -lrt -ltinfo -ldl -lpthread -lm && :
lib/liblldbPluginSymbolFileDWARF.a(DWARFDefines.cpp.o): In function `lldb_private::DW_DSC_value_to_name(unsigned int)':
/home/jeremysalwen/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp:478: undefined reference to `llvm::dwarf::DiscriminantString(unsigned int)'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
tromey commented 5 years ago

Offhand I don't know -- but I think it's best to try the latest branches; that is, the 8.0-based ones. I would try:

jeremysalwen commented 5 years ago

Should the wiki be updated? I chose all the versions based on what the wiki says.

jeremysalwen commented 5 years ago

fyi, building with the 8.0 based branches, and upgrading to gcc-8, it is still failing to build on my system:

[39/1592] Building CXX object lib/Target/WebAssembly/CM.../LLVMWebAssemblyCodeGen.dir/WebAssemblyAsmPrinter.cpp.o
FAILED: lib/Target/WebAssembly/CMakeFiles/LLVMWebAssemblyCodeGen.dir/WebAssemblyAsmPrinter.cpp.o 
/usr/bin/g++-8  -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/Target/WebAssembly -I/home/jeremysalwen/llvm/lib/Target/WebAssembly -I/usr/include/libxml2 -Iinclude -I/home/jeremysalwen/llvm/include -fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-class-memaccess -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -fdiagnostics-color -g    -fno-exceptions -fno-rtti -MD -MT lib/Target/WebAssembly/CMakeFiles/LLVMWebAssemblyCodeGen.dir/WebAssemblyAsmPrinter.cpp.o -MF lib/Target/WebAssembly/CMakeFiles/LLVMWebAssemblyCodeGen.dir/WebAssemblyAsmPrinter.cpp.o.d -o lib/Target/WebAssembly/CMakeFiles/LLVMWebAssemblyCodeGen.dir/WebAssemblyAsmPrinter.cpp.o -c /home/jeremysalwen/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
In file included from /home/jeremysalwen/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.h:19,
                 from /home/jeremysalwen/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h:21,
                 from /home/jeremysalwen/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h:14,
                 from /home/jeremysalwen/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp:17:
/home/jeremysalwen/llvm/lib/Target/WebAssembly/WebAssembly.h:90:6: error: multiple definition of ‘enum llvm::WebAssembly::TargetIndex’
 enum TargetIndex { TI_LOCAL_START, TI_GLOBAL_START, TI_OPERAND_STACK_START };
      ^~~~~~~~~~~
/home/jeremysalwen/llvm/lib/Target/WebAssembly/WebAssembly.h:86:6: note: previous definition here
 enum TargetIndex { TI_LOCAL_START, TI_GLOBAL_START, TI_OPERAND_STACK_START };
      ^~~~~~~~~~~
ninja: build stopped: subcommand failed.

It also fails with the same error on clang-7

tromey commented 5 years ago

It also fails with the same error on clang-7

Looks like a merge error perhaps? See https://github.com/rust-lang/llvm/commit/9c870ef82e43d3b0edc5a558f6962db9191c6438, which introduces the second copy of WebAssembly::TargetIndex.

@yurydelendik

tromey commented 5 years ago

I'm testing a fix.

tromey commented 5 years ago

It looks like rust itself isn't at the tip of that branch, so if you back up to commit f4728ed8fa2296c5b009bb85550e157e1e57ed0b, you should be fine. I didn't try this myself.

tromey commented 5 years ago

https://github.com/rust-lang/llvm/pull/136

tromey commented 5 years ago

The PR was accepted so I am going to close this bug. I've updated the wiki -- thanks for mentioning that.

jeremysalwen commented 5 years ago

Thanks!