[Bug 20866] New: link error: undefined symbols for architecture x86_64

Bug ID 20866
Summary link error: undefined symbols for architecture x86_64
Product lldb
Version unspecified
Hardware Macintosh
OS MacOS X
Status NEW
Severity normal
Priority P
Component All Bugs
Assignee lldb-dev@cs.uiuc.edu
Reporter kevin@hzsystems.com
Classification Unclassified

still investigating, but wanted to get this filed...after updating for
bug#20864:

$ ../llvm/configure --prefix=/Volumes/foil/_buildtoolchain/llvm35/build/_root
--enable-targets=host,cpp,x86_64,x86,arm,arm64,aarch64,powerpc,xcore,msp430
$ make -j8
[...]
llvm[3]: Linking Debug+Asserts Shared Library liblldb.dylib
clang++   -Wl,-install_name  -Wl,"@rpath/liblldb.dylib" -Wl,-dead_strip
-rdynamic -Wl,-rpath -Wl,@executable_path/../lib
-L/Volumes/foil/_buildtoolchain/llvm35/build/Debug+Asserts/lib
-L/Volumes/foil/_buildtoolchain/llvm35/build/Debug+Asserts/lib   -m64 
-dynamiclib -mmacosx-version-min=10.9 -o
/Volumes/foil/_buildtoolchain/llvm35/build/Debug+Asserts/lib/liblldb.dylib  \
      -llldbAPI -llldbBreakpoint -llldbCommands -llldbCore -llldbDataFormatters
-llldbExpression -llldbHostCommon -llldbInitAndLog -llldbInterpreter
-llldbPluginABIMacOSX_arm -llldbPluginABIMacOSX_arm64
-llldbPluginABIMacOSX_i386 -llldbPluginABISysV_x86_64
-llldbPluginABISysV_hexagon -llldbPluginDisassemblerLLVM
-llldbPluginDynamicLoaderStatic -llldbPluginDynamicLoaderPOSIX
-llldbPluginDynamicLoaderHexagon -llldbPluginEmulateInstructionARM
-llldbPluginEmulateInstructionARM64
-llldbPluginLanguageRuntimeCPlusPlusItaniumABI
-llldbPluginLanguageRuntimeObjCAppleObjCRuntime
-llldbPluginObjectContainerBSDArchive -llldbPluginObjectFileELF
-llldbPluginObjectFileJIT -llldbPluginSymbolVendorELF
-llldbPluginObjectFilePECOFF -llldbPluginOperatingSystemPython
-llldbPluginPlatformGDBServer -llldbPluginProcessGDBRemote
-llldbPluginSymbolFileDWARF -llldbPluginSymbolFileSymtab
-llldbPluginUnwindAssemblyInstEmulation -llldbPluginUnwindAssemblyx86
-llldbPluginUtility -llldbSymbol -llldbTarget -llldbUtility -lclangAnalysis
-lclangAST -lclangBasic -lclangCodeGen -lclangFrontend -lclangDriver
-lclangEdit -lclangLex -lclangParse -lclangSema -lclangSerialization
-lLLVMMCDisassembler -lLLVMObjCARCOpts -lLLVMProfileData
-llldbPluginPlatformMacOSX -llldbPluginPlatformLinux
-llldbPluginPlatformWindows -llldbPluginPlatformFreeBSD
-llldbPluginPlatformPOSIX -llldbPluginPlatformKalimba -llldbHostMacOSX
-llldbHostPosix -llldbPluginDynamicLoaderMacOSX
-llldbPluginDynamicLoaderDarwinKernel -llldbPluginObjectContainerUniversalMachO
-llldbPluginObjectFileMachO -llldbPluginSymbolVendorMacOSX
-llldbPluginProcessDarwin -llldbPluginProcessMachCore
-llldbPluginSystemRuntimeMacOSX -llldbPluginProcessElfCore
-llldbPluginJITLoaderGDB -lLLVMOption -lLLVMLinker -lLLVMMCJIT
-lLLVMRuntimeDyld -lLLVMExecutionEngine -lLLVMIRReader -lLLVMipo
-lLLVMVectorize -lLLVMInstrumentation -lLLVMBitWriter -lLLVMAsmParser
-lLLVMCppBackendCodeGen -lLLVMCppBackendInfo -lLLVMX86Disassembler
-lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMX86Desc -lLLVMObject -lLLVMBitReader
-lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMARMDisassembler
-lLLVMARMCodeGen -lLLVMARMAsmParser -lLLVMARMDesc -lLLVMARMInfo
-lLLVMARMAsmPrinter -lLLVMAArch64Disassembler -lLLVMAArch64CodeGen
-lLLVMAArch64AsmParser -lLLVMAArch64Desc -lLLVMAArch64Info
-lLLVMAArch64AsmPrinter -lLLVMAArch64Utils -lLLVMPowerPCDisassembler
-lLLVMPowerPCCodeGen -lLLVMPowerPCAsmParser -lLLVMPowerPCDesc -lLLVMPowerPCInfo
-lLLVMPowerPCAsmPrinter -lLLVMXCoreDisassembler -lLLVMMCDisassembler
-lLLVMXCoreCodeGen -lLLVMXCoreDesc -lLLVMXCoreInfo -lLLVMXCoreAsmPrinter
-lLLVMMSP430CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMMCParser
-lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa
-lLLVMAnalysis -lLLVMTarget -lLLVMCore -lLLVMMSP430Desc -lLLVMMSP430Info
-lLLVMMSP430AsmPrinter -lLLVMMC -lLLVMSupport -Wl,-all_load
-F/System/Library/Frameworks -F/System/Library/PrivateFrameworks -framework
Foundation -framework CoreFoundation -framework CoreServices -framework Carbon
-framework Security -framework DebugSymbols
-L/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config
-ldl -framework CoreFoundation -lpython2.7 -lobjc -lxml2 -ledit -lpanel
-lcurses -Wl,-install_name -Wl,"@executable_path/../lib/liblldb.dylib" -lz
-lpthread -ledit -lcurses -lm 
Undefined symbols for architecture x86_64:
  "lldb_private::MemoryHistoryASan::Terminate()", referenced from:
      lldb_private::Terminate() in liblldbInitAndLog.a(lldb.o)
  "lldb_private::MemoryHistoryASan::Initialize()", referenced from:
      lldb_private::Initialize() in liblldbInitAndLog.a(lldb.o)
 
"lldb_private::TypeValidatorImpl::TypeValidatorImpl(lldb_private::TypeValidatorImpl::Flags
const&)", referenced from:
     
lldb_private::TypeValidatorImpl_CXX::TypeValidatorImpl_CXX(std::__1::function<lldb_private::TypeValidatorImpl::ValidationResult
(lldb_private::ValueObject*)>, std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >,
lldb_private::TypeValidatorImpl::Flags const&) in
liblldbDataFormatters.a(TypeValidator.o)
  "vtable for lldb_private::TypeValidatorImpl_CXX", referenced from:
     
lldb_private::TypeValidatorImpl_CXX::TypeValidatorImpl_CXX(std::__1::function<lldb_private::TypeValidatorImpl::ValidationResult
(lldb_private::ValueObject*)>, std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >,
lldb_private::TypeValidatorImpl::Flags const&) in
liblldbDataFormatters.a(TypeValidator.o)
  NOTE: a missing vtable usually means the first non-inline virtual member
function has no definition.
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: ***
[/Volumes/foil/_buildtoolchain/llvm35/build/Debug+Asserts/lib/liblldb.dylib]
Error 1
make[2]: *** [all] Error 1
make[1]: *** [all] Error 1
make: *** [all] Error 1