[Lldb-commits] [PATCH] fix cmake build by linking LLVMSupport

Chilledheart rwindz0 at gmail.com
Fri Nov 14 17:08:46 PST 2014


Hi Zachary,

Yeah, hardcoding support library here is sort of bad style here. 
These three lines you mentioned previously are used to fix build issue with lldb-platform which should be linked with LLVMSupport because `llvm::Triple::getOSName()` is needed there. I think it was the problem from `tools/lldb-platform`.

Cheers,
Chilledheart

```

[1/3] cd /Users/chilledheart/llvm-trunk/build-lldb/tools/lldb/scripts && echo -n
-n
[2/3] : && /usr/bin/clang++  -stdlib=libc++ -march=native -fdiagnostics-format=vi -fdiagnostics-show-category=name -fcolor-diagnostics -pedantic -Wall -Wextra -Wno-long-long -Wno-unused-parameter -Woverloaded-virtual  -stdlib=libc++ -march=native -fdiagnostics-format=vi -fdiagnostics-show-category=name -fcolor-diagnostics -pedantic -Wall -Wextra -Wno-long-long -Wno-unused-parameter -Woverloaded-virtual -fno-omit-frame-pointer -g -O0 -std=c++11 -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -std=c++11 -fcolor-diagnostics -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-deprecated-register  -fno-exceptions -fno-rtti -g -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.9 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -stdlib=libc++     -Wl,-dead_strip tools/lldb/tools/lldb-platform/CMakeFiles/lldb-platform.dir/lldb-platform.cpp.o  -o bin/lldb-platform-3.6.0  lib/liblldb.3.6.0.dylib lib/liblldbBreakpoint.a lib/liblldbCommands.a lib/liblldbDataFormatters.a lib/liblldbHost.a lib/liblldbCore.a lib/liblldbExpression.a lib/liblldbInterpreter.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbUtility.a lib/liblldbPluginDisassemblerLLVM.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFileSymtab.a lib/liblldbPluginDynamicLoaderStatic.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbPluginDynamicLoaderHexagonDYLD.a lib/liblldbPluginObjectFileMachO.a lib/liblldbPluginObjectFileELF.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginSymbolVendorELF.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectContainerMachOArchive.a lib/liblldbPluginProcessGDBRemote.a lib/liblldbPluginProcessMachCore.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginPlatformGDB.a lib/liblldbPluginPlatformFreeBSD.a lib/liblldbPluginPlatformKalimba.a lib/liblldbPluginPlatformLinux.a lib/liblldbPluginPlatformPOSIX.a lib/liblldbPluginPlatformWindows.a lib/liblldbPluginPlatformMacOSX.a lib/liblldbPluginDynamicLoaderMacOSXDYLD.a lib/liblldbPluginUnwindAssemblyInstEmulation.a lib/liblldbPluginUnwindAssemblyX86.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginCXXItaniumABI.a lib/liblldbPluginABIMacOSX_arm.a lib/liblldbPluginABIMacOSX_arm64.a lib/liblldbPluginABIMacOSX_i386.a lib/liblldbPluginABISysV_x86_64.a lib/liblldbPluginABISysV_hexagon.a lib/liblldbPluginABISysV_ppc.a lib/liblldbPluginABISysV_ppc64.a lib/liblldbPluginInstructionARM.a lib/liblldbPluginInstructionARM64.a lib/liblldbPluginObjectFilePECOFF.a lib/liblldbPluginOSPython.a lib/liblldbPluginMemoryHistoryASan.a lib/liblldbPluginInstrumentationRuntimeAddressSanitizer.a lib/liblldbAPI.a lib/liblldbPluginDynamicLoaderDarwinKernel.a lib/liblldbPluginProcessMacOSXKernel.a lib/liblldbPluginSymbolVendorMacOSX.a lib/liblldbPluginSystemRuntimeMacOSX.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginJITLoaderGDB.a lib/libclangAnalysis.dylib lib/libclangAST.dylib lib/libclangBasic.dylib lib/libclangCodeGen.dylib lib/libclangDriver.dylib lib/libclangEdit.dylib lib/libclangFrontend.dylib lib/libclangLex.dylib lib/libclangParse.dylib lib/libclangRewrite.dylib lib/libclangRewriteFrontend.dylib lib/libclangSema.dylib lib/libclangSerialization.dylib -Wl,-rpath, at executable_path/../lib && :
FAILED: : && /usr/bin/clang++  -stdlib=libc++ -march=native -fdiagnostics-format=vi -fdiagnostics-show-category=name -fcolor-diagnostics -pedantic -Wall -Wextra -Wno-long-long -Wno-unused-parameter -Woverloaded-virtual  -stdlib=libc++ -march=native -fdiagnostics-format=vi -fdiagnostics-show-category=name -fcolor-diagnostics -pedantic -Wall -Wextra -Wno-long-long -Wno-unused-parameter -Woverloaded-virtual -fno-omit-frame-pointer -g -O0 -std=c++11 -stdlib=libc++ -fPIC -fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -std=c++11 -fcolor-diagnostics -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-deprecated-register  -fno-exceptions -fno-rtti -g -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.9 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -stdlib=libc++     -Wl,-dead_strip tools/lldb/tools/lldb-platform/CMakeFiles/lldb-platform.dir/lldb-platform.cpp.o  -o bin/lldb-platform-3.6.0  lib/liblldb.3.6.0.dylib lib/liblldbBreakpoint.a lib/liblldbCommands.a lib/liblldbDataFormatters.a lib/liblldbHost.a lib/liblldbCore.a lib/liblldbExpression.a lib/liblldbInterpreter.a lib/liblldbSymbol.a lib/liblldbTarget.a lib/liblldbUtility.a lib/liblldbPluginDisassemblerLLVM.a lib/liblldbPluginSymbolFileDWARF.a lib/liblldbPluginSymbolFileSymtab.a lib/liblldbPluginDynamicLoaderStatic.a lib/liblldbPluginDynamicLoaderPosixDYLD.a lib/liblldbPluginDynamicLoaderHexagonDYLD.a lib/liblldbPluginObjectFileMachO.a lib/liblldbPluginObjectFileELF.a lib/liblldbPluginObjectFileJIT.a lib/liblldbPluginSymbolVendorELF.a lib/liblldbPluginObjectContainerBSDArchive.a lib/liblldbPluginObjectContainerMachOArchive.a lib/liblldbPluginProcessGDBRemote.a lib/liblldbPluginProcessMachCore.a lib/liblldbPluginProcessUtility.a lib/liblldbPluginPlatformGDB.a lib/liblldbPluginPlatformFreeBSD.a lib/liblldbPluginPlatformKalimba.a lib/liblldbPluginPlatformLinux.a lib/liblldbPluginPlatformPOSIX.a lib/liblldbPluginPlatformWindows.a lib/liblldbPluginPlatformMacOSX.a lib/liblldbPluginDynamicLoaderMacOSXDYLD.a lib/liblldbPluginUnwindAssemblyInstEmulation.a lib/liblldbPluginUnwindAssemblyX86.a lib/liblldbPluginAppleObjCRuntime.a lib/liblldbPluginCXXItaniumABI.a lib/liblldbPluginABIMacOSX_arm.a lib/liblldbPluginABIMacOSX_arm64.a lib/liblldbPluginABIMacOSX_i386.a lib/liblldbPluginABISysV_x86_64.a lib/liblldbPluginABISysV_hexagon.a lib/liblldbPluginABISysV_ppc.a lib/liblldbPluginABISysV_ppc64.a lib/liblldbPluginInstructionARM.a lib/liblldbPluginInstructionARM64.a lib/liblldbPluginObjectFilePECOFF.a lib/liblldbPluginOSPython.a lib/liblldbPluginMemoryHistoryASan.a lib/liblldbPluginInstrumentationRuntimeAddressSanitizer.a lib/liblldbAPI.a lib/liblldbPluginDynamicLoaderDarwinKernel.a lib/liblldbPluginProcessMacOSXKernel.a lib/liblldbPluginSymbolVendorMacOSX.a lib/liblldbPluginSystemRuntimeMacOSX.a lib/liblldbPluginProcessElfCore.a lib/liblldbPluginJITLoaderGDB.a lib/libclangAnalysis.dylib lib/libclangAST.dylib lib/libclangBasic.dylib lib/libclangCodeGen.dylib lib/libclangDriver.dylib lib/libclangEdit.dylib lib/libclangFrontend.dylib lib/libclangLex.dylib lib/libclangParse.dylib lib/libclangRewrite.dylib lib/libclangRewriteFrontend.dylib lib/libclangSema.dylib lib/libclangSerialization.dylib -Wl,-rpath, at executable_path/../lib && :
Undefined symbols for architecture x86_64:
  "llvm::Triple::getOSName() const", referenced from:
      CreateProcessInfoResponse_DebugServerStyle(lldb_private::ProcessInstanceInfo const&, lldb_private::StreamString&) in liblldbPluginProcessGDBRemote.a(GDBRemoteCommunicationServer.cpp.o)
  "llvm::Triple::getVendorName() const", referenced from:
      CreateProcessInfoResponse_DebugServerStyle(lldb_private::ProcessInstanceInfo const&, lldb_private::StreamString&) in liblldbPluginProcessGDBRemote.a(GDBRemoteCommunicationServer.cpp.o)
  "llvm::Triple::isArch64Bit() const", referenced from:
      CreateProcessInfoResponse_DebugServerStyle(lldb_private::ProcessInstanceInfo const&, lldb_private::StreamString&) in liblldbPluginProcessGDBRemote.a(GDBRemoteCommunicationServer.cpp.o)
  "llvm::Triple::isArch32Bit() const", referenced from:
      CreateProcessInfoResponse_DebugServerStyle(lldb_private::ProcessInstanceInfo const&, lldb_private::StreamString&) in liblldbPluginProcessGDBRemote.a(GDBRemoteCommunicationServer.cpp.o)
  "llvm::Triple::isArch16Bit() const", referenced from:
      CreateProcessInfoResponse_DebugServerStyle(lldb_private::ProcessInstanceInfo const&, lldb_private::StreamString&) in liblldbPluginProcessGDBRemote.a(GDBRemoteCommunicationServer.cpp.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.


```

http://reviews.llvm.org/D6270






More information about the lldb-commits mailing list