[CMake] The connection to cmake-server was terminated unexpectedly [cms-client] cmake-server exited with status null (SIGSEGV)

fdk17 fdk17 at ftml.net
Wed Sep 4 14:12:48 EDT 2019


https://github.com/microsoft/vscode-cmake-tools/issues/752 states that it ran out of stack and the log shows what looks like to be involved with a recursive loop in some CMakeLists.txt. A call depth of 27491 seems a bit excessive.

After the second call to FindPackage it just seems to be doing the same thing over and over again.
I'd think a newer version of CMake would complain about too much recursion in the project files.

Does the project work on the command line without involving VSCode?
It could be something different in the environment if it works on the command line but not as server instance in VSCode.

--
F

On Wed, Sep 4, 2019, at 12:22 PM, Christopher Dawes wrote:
> Hi there, we are experiencing a crash when working with VSCode on Ubuntu:
> 
> Brief Issue Summary

> When starting up VSCode using the CMake extension i get this error on all my projects, the application terminates pretty quickly. What’s happening is cmake server is spawned and then crashes; i’m afraid i’m uncertain what commands are exchanged. I logged the issue against the cmake extension here  https://github.com/microsoft/vscode-cmake-tools/issues/752 however it looks like the issue is with cmake rather than the way it’s being used.

> Platform and Versions

>  * Operating System: Ubuntu 18.04
>  * CMake Version: 3.10.2
>  * VSCode Version: 1.37.1
>  * CMake Tools Extension Version: 1.13
>  * Compiler/Toolchain: GCC 7.4.0-1ubuntu1~18.04.1 with Ninja
> Other Notes/Information

> I've run with debug symbols however it's too big (33MB) to attach here, see

> https://www.dropbox.com/s/cl7z4cxd5oyuvbr/with_symbols.txt?dl=0

> Here's a small excerpt:
> Thread 1 (Thread 0x7fce40c3a780 (LWP 28685)):
#0  std::__cxx11::basic_string, std::allocator >::_M_length (this=, __length=) at /usr/include/c++/7/bits/basic_string.h:172
No locals.
#1  std::__cxx11::basic_string, std::allocator >::_M_set_length (__n=, this=) at /usr/include/c++/7/bits/basic_string.h:205
No locals.
#2  std::__cxx11::basic_string, std::allocator >::basic_string (this=0x7ffdee7d5e40) at /usr/include/c++/7/bits/basic_string.h:423
No locals.
#3  cmsys::SystemTools::FileIsDirectory (inName=...) at ./Source/kwsys/SystemTools.cxx:2865
        length = 
        name = 
        local_buffer = 
        string_buffer = 
        last = 
        fs = 
#4  0x000055d2c7efa231 in cmListFile::ParseFile (this=this at entry=0x7ffdee7d7010, filename=0x55d2ca803700 "/usr/local/bp/share/cmake/FindLibXml2.cmake", messenger=0x55d2c8da6110, lfbt=...) at ./Source/cmListFileCache.cxx:139
        parseError = 
#5  0x000055d2c7ca8c63 in cmMakefile::ReadDependentFile (this=0x55d2c8e139a0, filename=, noPolicyScope=noPolicyScope at entry=false) at ./Source/cmMakefile.cxx:444
        filenametoread = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca803700 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000\v\000\000\000\000\000\000", _M_allocated_capacity = 45}}
        incScope = {Makefile = 0x55d2c8e139a0, NoPolicyScope = false, CheckCMP0011 = false, ReportError = true}
        listFile = {Functions = { >> = {_M_impl = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}}, }}
#6  0x000055d2c7d8e3bb in cmIncludeCommand::InitialPass (this=0x55d2ca8034c0, args=...) at ./Source/cmIncludeCommand.cxx:123
        readit = 
        optional = 
        noPolicyScope = 
        fname = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca803640 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000ml2\000\000\000\000", _M_allocated_capacity = 43}}
        resultVarName = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x7ffdee7d7120 ""}, _M_string_length = 0, {_M_local_buf = "\000\000\000\000[\000\000\000Pc\357\310\322U\000", _M_allocated_capacity = 390842023936}}
        fname_abs = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca803560 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000`5\200\312\322U\000", _M_allocated_capacity = 45}}
        gg = 0x55d2c8df16a0
        listFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca803680 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-", '\000' , _M_allocated_capacity = 45}}
#7  0x000055d2c7d2709c in cmCommand::InvokeInitialPass (this=0x55d2ca8034c0, args=..., status=...) at ./Source/cmCommand.cxx:19
        expandedArguments = {, std::allocator >, std::allocator, std::allocator > > >> = {_M_impl = {, std::allocator > >> = {<__gnu_cxx::new_allocator, std::allocator > >> = {}, }, _M_start = 0x55d2ca8013a0, _M_finish = 0x55d2ca8013c0, _M_end_of_storage = 0x55d2ca8013c0}}, }
#8  0x000055d2c7ca7326 in cmMakefile::ExecuteCommand (this=this at entry=0x55d2c8e139a0, lff=..., status=...) at ./Source/cmMakefile.cxx:277
        invokeSucceeded = 
        hadNestedError = 
        pcmd = {_M_t = {_M_t = { >> = { >> = {, true>> = {> = {}, }, }, > = {_M_head_impl = 0x55d2ca8034c0}, }, }}}
        proto = 
        result = true
        name = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x7ffdee7d7400 "include"}, _M_string_length = 7, {_M_local_buf = "include\000p\205\336\310\322U\000", _M_allocated_capacity = 28539428140183145}}
        stack_manager = {Makefile = 0x55d2c8e139a0}
#9  0x000055d2c7ca79cd in cmMakefile::ReadListFile (this=this at entry=0x55d2c8e139a0, listFile=..., filenametoread=...) at ./Source/cmMakefile.cxx:529
        status = {ReturnInvoked = false, BreakInvoked = false, ContinueInvoked = false, NestedError = false}
        i = 2
        currentParentFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca8021d0 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000Ѓ\336\310\322U\000", _M_allocated_capacity = 43}}
        currentFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca803440 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000\020a\332\310\322U\000", _M_allocated_capacity = 43}}
        numberFunctions = 
#10 0x000055d2c7ca8c79 in cmMakefile::ReadDependentFile (this=0x55d2c8e139a0, filename=, noPolicyScope=noPolicyScope at entry=false) at ./Source/cmMakefile.cxx:449
        filenametoread = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca8014c0 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000\v\000\000\000\000\000\000", _M_allocated_capacity = 45}}
        incScope = {Makefile = 0x55d2c8e139a0, NoPolicyScope = false, CheckCMP0011 = false, ReportError = true}
        listFile = {Functions = { >> = {_M_impl = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_start = 0x55d2ca801bd0, _M_finish = 0x55d2ca801f50, _M_end_of_storage = 0x55d2ca801fd0}}, }}
#11 0x000055d2c7d8e3bb in cmIncludeCommand::InitialPass (this=0x55d2ca801280, args=...) at ./Source/cmIncludeCommand.cxx:123
        readit = 
        optional = 
        noPolicyScope = 
        fname = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca801400 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000ml2\000\000\000\000", _M_allocated_capacity = 43}}
        resultVarName = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x7ffdee7d7710 ""}, _M_string_length = 0, {_M_local_buf = "\000\000\000\000[\000\000\000Pc\357\310\322U\000", _M_allocated_capacity = 390842023936}}
        fname_abs = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca801320 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000 \023\200\312\322U\000", _M_allocated_capacity = 45}}
        gg = 0x55d2c8df16a0
        listFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca801440 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-", '\000' , _M_allocated_capacity = 45}}
#12 0x000055d2c7d2709c in cmCommand::InvokeInitialPass (this=0x55d2ca801280, args=..., status=...) at ./Source/cmCommand.cxx:19
        expandedArguments = {, std::allocator >, std::allocator, std::allocator > > >> = {_M_impl = {, std::allocator > >> = {<__gnu_cxx::new_allocator, std::allocator > >> = {}, }, _M_start = 0x55d2ca8024e0, _M_finish = 0x55d2ca802500, _M_end_of_storage = 0x55d2ca802500}}, }
#13 0x000055d2c7ca7326 in cmMakefile::ExecuteCommand (this=this at entry=0x55d2c8e139a0, lff=..., status=...) at ./Source/cmMakefile.cxx:277
        invokeSucceeded = 
        hadNestedError = 
        pcmd = {_M_t = {_M_t = { >> = { >> = {, true>> = {> = {}, }, }, > = {_M_head_impl = 0x55d2ca801280}, }, }}}
        proto = 
        result = true
        name = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x7ffdee7d79f0 "include"}, _M_string_length = 7, {_M_local_buf = "include\000p\205\336\310\322U\000", _M_allocated_capacity = 28539428140183145}}
        stack_manager = {Makefile = 0x55d2c8e139a0}
#14 0x000055d2c7ca79cd in cmMakefile::ReadListFile (this=this at entry=0x55d2c8e139a0, listFile=..., filenametoread=...) at ./Source/cmMakefile.cxx:529
        status = {ReturnInvoked = false, BreakInvoked = false, ContinueInvoked = false, NestedError = false}
        i = 2
        currentParentFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca802ff0 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000Ѓ\336\310\322U\000", _M_allocated_capacity = 43}}
        currentFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca801200 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000\020a\332\310\322U\000", _M_allocated_capacity = 43}}
        numberFunctions = 
#15 0x000055d2c7ca8c79 in cmMakefile::ReadDependentFile (this=0x55d2c8e139a0, filename=, noPolicyScope=noPolicyScope at entry=false) at ./Source/cmMakefile.cxx:449
        filenametoread = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca802600 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000\v\000\000\000\000\000\000", _M_allocated_capacity = 45}}
        incScope = {Makefile = 0x55d2c8e139a0, NoPolicyScope = false, CheckCMP0011 = false, ReportError = true}
        listFile = {Functions = { >> = {_M_impl = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_start = 0x55d2ca807450, _M_finish = 0x55d2ca8077d0, _M_end_of_storage = 0x55d2ca807850}}, }}
#16 0x000055d2c7d8e3bb in cmIncludeCommand::InitialPass (this=0x55d2ca8023c0, args=...) at ./Source/cmIncludeCommand.cxx:123
        readit = 
        optional = 
        noPolicyScope = 
        fname = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca802540 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000ml2\000\000\000\000", _M_allocated_capacity = 43}}
        resultVarName = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x7ffdee7d7d00 ""}, _M_string_length = 0, {_M_local_buf = "\000\000\000\000[\000\000\000Pc\357\310\322U\000", _M_allocated_capacity = 390842023936}}
        fname_abs = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca802460 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000`$\200\312\322U\000", _M_allocated_capacity = 45}}
        gg = 0x55d2c8df16a0
        listFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca802580 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-", '\000' , _M_allocated_capacity = 45}}
#17 0x000055d2c7d2709c in cmCommand::InvokeInitialPass (this=0x55d2ca8023c0, args=..., status=...) at ./Source/cmCommand.cxx:19
        expandedArguments = {, std::allocator >, std::allocator, std::allocator > > >> = {_M_impl = {, std::allocator > >> = {<__gnu_cxx::new_allocator, std::allocator > >> = {}, }, _M_start = 0x55d2ca8002e0, _M_finish = 0x55d2ca800300, _M_end_of_storage = 0x55d2ca800300}}, }
#18 0x000055d2c7ca7326 in cmMakefile::ExecuteCommand (this=this at entry=0x55d2c8e139a0, lff=..., status=...) at ./Source/cmMakefile.cxx:277
        invokeSucceeded = 
        hadNestedError = 
        pcmd = {_M_t = {_M_t = { >> = { >> = {, true>> = {> = {}, }, }, > = {_M_head_impl = 0x55d2ca8023c0}, }, }}}
        proto = 
        result = true
        name = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x7ffdee7d7fe0 "include"}, _M_string_length = 7, {_M_local_buf = "include\000p\205\336\310\322U\000", _M_allocated_capacity = 28539428140183145}}
        stack_manager = {Makefile = 0x55d2c8e139a0}
#19 0x000055d2c7ca79cd in cmMakefile::ReadListFile (this=this at entry=0x55d2c8e139a0, listFile=..., filenametoread=...) at ./Source/cmMakefile.cxx:529
        status = {ReturnInvoked = false, BreakInvoked = false, ContinueInvoked = false, NestedError = false}
        i = 2
        currentParentFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca802300 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000Ѓ\336\310\322U\000", _M_allocated_capacity = 43}}
        currentFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca802340 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000\020a\332\310\322U\000", _M_allocated_capacity = 43}}
        numberFunctions = 
#20 0x000055d2c7ca8c79 in cmMakefile::ReadDependentFile (this=0x55d2c8e139a0, filename=, noPolicyScope=noPolicyScope at entry=false) at ./Source/cmMakefile.cxx:449
        filenametoread = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca800400 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000\v\000\000\000\000\000\000", _M_allocated_capacity = 45}}
        incScope = {Makefile = 0x55d2c8e139a0, NoPolicyScope = false, CheckCMP0011 = false, ReportError = true}
        listFile = {Functions = { >> = {_M_impl = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_start = 0x55d2ca800b10, _M_finish = 0x55d2ca800e90, _M_end_of_storage = 0x55d2ca800f10}}, }}
#21 0x000055d2c7d8e3bb in cmIncludeCommand::InitialPass (this=0x55d2ca8001c0, args=...) at ./Source/cmIncludeCommand.cxx:123
        readit = 
        optional = 
        noPolicyScope = 
        fname = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca800340 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "+\000\000\000\000\000\000\000ml2\000\000\000\000", _M_allocated_capacity = 43}}
        resultVarName = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x7ffdee7d82f0 ""}, _M_string_length = 0, {_M_local_buf = "\000\000\000\000[\000\000\000Pc\357\310\322U\000", _M_allocated_capacity = 390842023936}}
        fname_abs = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca800260 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-\000\000\000\000\000\000\000`\002\200\312\322U\000", _M_allocated_capacity = 45}}
        gg = 0x55d2c8df16a0
        listFile = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x55d2ca800380 "/usr/local/bp/share/cmake/FindLibXml2.cmake"}, _M_string_length = 43, {_M_local_buf = "-", '\000' , _M_allocated_capacity = 45}}
#22 0x000055d2c7d2709c in cmCommand::InvokeInitialPass (this=0x55d2ca8001c0, args=..., status=...) at ./Source/cmCommand.cxx:19
        expandedArguments = {, std::allocator >, std::allocator
> 
> Any assistance would be much appreciated. More than happy to do a remote debug session if that would help.
> 
> Thanks and Regards 
> 
> 
> *Christopher Dawes*
> *Principal Architect, EFTLab** *
> 
> *M:* +44 (0)7899 842 759
> *E:* christopher.dawes at eftlab.com
> *A:* 109 Brighton Road, Sandgate, QLD 4017
> 
> *IMPORTANT NOTICE* 
> This message contains confidential information and is intended only for the addressee(s). E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. EFTlab Pty Ltd cannot accept liability for any errors or omissions in the contents of this message, which may arise as a result of e-mail transmission. Please note that EFTlab Pty Ltd may monitor, analyse and archive email traffic, data and the content of email for the purposes of security, legal compliance and staff training. If you have received this email in error please notify us at support at eftlab.com.au. 
> 
> -- 
> 
> Powered by www.kitware.com
> 
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
> 
> Kitware offers various services to support the CMake community. For more information on each offering, please visit:
> 
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
> 
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
> 
> Follow this link to subscribe/unsubscribe:
> https://cmake.org/mailman/listinfo/cmake
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://cmake.org/pipermail/cmake/attachments/20190904/0c40d2dd/attachment-0001.html>


More information about the CMake mailing list