This is the mail archive of the
libc-help@sourceware.org
mailing list for the glibc project.
Re: GLIBC 2.25 and up test failures listed on wiki
- From: Carlos O'Donell <carlos at redhat dot com>
- To: Lee Mracek <lee dot mracek at uber dot com>, libc-help at sourceware dot org
- Cc: carlos at systemhalted dot org
- Date: Tue, 11 Jun 2019 16:54:53 -0400
- Subject: Re: GLIBC 2.25 and up test failures listed on wiki
- References: <CALQeLk3uagYsdQb8DfRfuGDujaVHTxQyMsU1k5YL30GP8jEBwg@mail.gmail.com>
On 6/11/19 4:47 PM, Lee Mracek wrote:
> While building GLIBC I've been running into the issues with
> test-cond-printers, etc as listed in the architecture-independent section
> of https://sourceware.org/glibc/wiki/Release/2.25. Since I am sure that
> Python is in my path, I'm assuming that this is due to the potential cause
> added to the wiki regarding "gcc 7.8 or newer" but I'd like to confirm that.
Look closely, it's "gdb 7.8 or newer", you need:
- New enough python.
* Python 3.4 or later
Python is required to build the GNU C Library. As of release time,
Python 3.7.1 is the newest verified to work for building and
testing the GNU C Library.
- New enough PExpect.
* PExpect 4.0
The pretty printer tests drive GDB through test programs and
compare its output to the printers'. PExpect is used to capture
the output of GDB, and should be compatible with the Python version
in your system. As of release time PExpect 4.3 is the newest
verified to work to test the pretty printers.
- New enough GNU Debugger (gdb).
* GDB 7.8 or later with support for Python 2.7/3.4 or later
GDB itself needs to be configured with Python support in order to
use the pretty printers. Notice that your system having Python
available doesn't imply that GDB supports it, nor that your
system's Python and GDB's have the same version. As of release
time GNU 'debugger' 8.2 is the newest verified to work to test the
pretty printers.
Unless Python, PExpect and GDB with Python support are present, the
printer tests will report themselves as 'UNSUPPORTED'. Notice that
some of the printer tests require the GNU C Library to be compiled
with debugging symbols.
All three of these things come togethe to test the pretty printers.
Notes taken from glibc/INSTALL.
> Currently my error presents as an unexpected output, and running the binary
> itself doesn't provide any information. I can provide a full log if
> necessary to compare.
>
> Furthermore, I'm wondering what changed in gcc 7.8 to make this test pass.
> I'd love to deeply understand what is going on before I deploy a glibc that
> is failing unit tests.
It is documented as the minimum for the test to work in glibc/INSTALL.
We don't explicitly explain why, but I expect it's a combination of what was
the oldest tested gdb which works. Feel free to report back with an older
gdb if it works :-)
--
Cheers,
Carlos.