labath added a comment. In http://reviews.llvm.org/D18519#390337, @eran.ifrah wrote:
> Spoke too soon, the hack into `CMakeLists.txt` is still needed > Passing ` -mbig-obj` crashes `ld.exe` (although it crashes in a much later > stage, at about 77% in the build) Clang only puts /bigobj on a couple of files, which are known to produce extremely large object files. Would that help you get past the linker error by any chance? ================ Comment at: source/API/CMakeLists.txt:74-85 @@ -73,6 +73,14 @@ # want every single library taking a dependency on the script interpreters. -target_link_libraries(liblldb PRIVATE - lldbPluginScriptInterpreterNone - lldbPluginScriptInterpreterPython - ) +if(MINGW) + target_link_libraries(liblldb PRIVATE + lldbPluginScriptInterpreterNone + lldbPluginScriptInterpreterPython + Dbghelp # Needed for MiniDumpWriteDump + ) +else() + target_link_libraries(liblldb PRIVATE + lldbPluginScriptInterpreterNone + lldbPluginScriptInterpreterPython + ) +endif() ---------------- I think you should add this library to `system_libs` in LLDBConfig.cmake. Then it should get linked in automatically. ================ Comment at: source/Plugins/Process/Windows/Live/DebuggerThread.cpp:380-383 @@ -379,5 +379,6 @@ { + DWORD dwPidToDetach = m_pid_to_detach; WINLOG_IFANY(WINDOWS_LOG_EVENT | WINDOWS_LOG_EXCEPTION | WINDOWS_LOG_PROCESS, "Breakpoint exception is cue to detach from process 0x%x", - m_pid_to_detach); + dwPidToDetach); ::DebugActiveProcessStop(m_pid_to_detach); ---------------- zturner: The point here is that m_pid_to_detach is an std::atomic, and you shouldn't be passing those through `...` (I am not sure how it even worked in the first place). An alternative would be putting `m_pid_to_detach.load()` here... ================ Comment at: tools/argdumper/CMakeLists.txt:6-8 @@ +5,5 @@ +if(MINGW) + # link directly against the dll file + add_dependencies(lldb-argdumper liblldb) + target_link_libraries(lldb-argdumper -L"${CMAKE_BINARY_DIR}/bin" -llldb) +else() ---------------- It's a hack, but I think I know why you need it... there are issues with multiply defined symbols in lldb on windows, so I guess mingw is just more sensitive to them... http://reviews.llvm.org/D18519 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits