Skip to content

configure script lldb version detection issue #26297

Closed
@alsam

Description

@alsam

Hi All,
Seems like the line

    CFG_LLDB_VERSION=$($CFG_LLDB --version 2>/dev/null | head -1)

in the configure script doesn't work correctly - it causes a segmentation fault.
lldb behavior differs from gdb: its output cannot be redirected or passed via pipe, this is a short evidence:

$ /usr/bin/lldb --version  
lldb version 3.6.0 ( revision )

ok, but

/usr/bin/lldb --version  >& LLDB.VERS
Segmentation fault (core dumped)

for gdb it is ok:

$ /usr/bin/gdb --version  >& GDB.VERS
$ cat GDB.VERS
GNU gdb (Ubuntu 7.9-1ubuntu1) 7.9

an excerpt from lldb source code look innocuous and should at first glance work but fails nevertheless:

SBError
Driver::ParseArgs (int argc, const char *argv[], FILE *out_fh, bool &exiting)
{
...
    else if (m_option_data.m_print_version)
    {
        ::fprintf (out_fh, "%s\n", m_debugger.GetVersionString());
        exiting = true;
    }
...
        SBError error (driver.ParseArgs (argc, argv, stdout, exiting));

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions