[Bug 1135254] New: libstdc++-v3's STL prettyprinters are not used by gdb
http://bugzilla.suse.com/show_bug.cgi?id=1135254 Bug ID: 1135254 Summary: libstdc++-v3's STL prettyprinters are not used by gdb Classification: openSUSE Product: openSUSE Distribution Version: Leap 15.0 Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Development Assignee: bnc-team-screening@forge.provo.novell.com Reporter: tdevries@suse.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- So, by default we get: ... (gdb) p freqs $2 = {_M_t = { _M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<char const, int> >
= {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<char const, int> > = {<No data fields>}, <No data fields>}, <std::_Rb_tree_key_compare<std::less<char> >> = { _M_key_compare = {<std::binary_function<char, char, bool>> = {<No data fields>}, <No data fields>}}, <std::_Rb_tree_header> = {_M_header = {_M_color = std::_S_red, _M_parent = 0x0, _M_left = 0x7fffffffdb18, _M_right = 0x7fffffffdb18}, _M_node_count = 0}, <No data fields>}}} ... instead of: ... (gdb) p freqs $1 = std::map with 0 elements ...
Users can install this relatively easily (as described at https://sourceware.org/gdb/wiki/STLSupport), but it would be good to have a better out-of-the-box experience. Fedora does have this. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c1 --- Comment #1 from Richard Biener <rguenther@suse.com> --- But we have it as well?! Packaged into libstdc+++-devel: %dir %{_datadir}/gdb/auto-load/%{mainlibdirbi} %{_datadir}/gdb/auto-load/%{mainlibdirbi}/libstdc++.so.*-gdb.py -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c2 --- Comment #2 from Bernhard Wiedemann <bwiedemann@suse.com> --- Maybe libstdc++-devel was not installed. gcc8.spec could get a line like Supplements: packageand(libstdc++:gdb) but OTOH you do not need all the header files on most systems with gdb. -- You are receiving this mail because: You are on the CC list for the bug.
ls /usr/share/gdb/auto-load/usr/lib64/
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c3 --- Comment #3 from Richard Biener <rguenther@suse.com> --- True. My reasoning was you'll unlikely be debugging a C++ program if you are not doing C++ development in which case you'd have libstdc++-devel installed. It's also possible to split out the python bindings into a separate package and having the supplements there (does lldb also use the same pretty-printers?). Note that libstdc++ is almost always installed on the system so you'd get the pretty-printers once you install gdb. Note there are different pretty-printers for each minor variant of libstdc++: libglib-2.0.so.0.4800.2-gdb.py libstdc++.so.6.0.22-gdb.py libgobject-2.0.so.0.4800.2-gdb.py libstdc++.so.6.0.24-gdb.py libstdc++.so.6.0.19-gdb.py libstdc++.so.6.0.25-gdb.py libstdc++.so.6.0.21-gdb.py but only _one_ shared library eventually prevails:
ls /usr/lib64/libstdc++.so.6* /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.0.25
so splitting the pretty-printer apart and pulling it in via a supplements would eventually help that as well. Now I need to read up how Supplements work in face of package removal and how they relate to Recomments/Suggests. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c4 --- Comment #4 from Bernhard Wiedemann <bwiedemann@suse.com> --- Supplements are reverse Recommends. So instead of adding an explicit Recommends into gdb, you add the Supplements to the pretty-printer aka, "If you can get this and also have foo, then you might want this too" It is only a soft dep, so can still be removed or skipped (default for small JeOS and container images). -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c5 Richard Biener <rguenther@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |IN_PROGRESS --- Comment #5 from Richard Biener <rguenther@suse.com> --- Splitting out the pretty-printers now and trying the supplements idea. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c6 Richard Biener <rguenther@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|IN_PROGRESS |RESOLVED Resolution|--- |FIXED --- Comment #6 from Richard Biener <rguenther@suse.com> --- Fixed in devel:gcc. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c8 Richard Biener <rguenther@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mls@suse.com Flags| |needinfo?(mls@suse.com) --- Comment #8 from Richard Biener <rguenther@suse.com> --- So while Supplements: (gdb and libstdc++6 = 9.1.1+r271995-lp151.18.1) works in SLE15+ Supplements: packageand(gdb:libstdc++6=9.1.1+r271995-18.1) does not seem to work on Leap 42.3 for example. When doing zypper in libstdc++6-gcc9 the pretty-printer package is not selected. Note that the Supplements above mentions the virtual package libstdc++6 the libstdc++6-gcc9 package provides (and the system currently has libstdc++6-gcc8 also providing it but in a non-matching version). So my conclusion is for the SLE12 Toolchain module this split is counter-productive since people will need to explicitely install libstdc++6-pp-gcc9 to debug C++. Michael - is the virtual package thing the issue here? If so it might in the end work (since the actual installed runtime _will_ have the bare libstdc++6 name on the Toolchain module, just installing an unsupported runtime would cause this issue). -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c9 Michael Schröder <mls@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Flags|needinfo?(mls@suse.com) | --- Comment #9 from Michael Schröder <mls@suse.com> --- The issue is the "=..." version specification. You can't do that with packageand(), it's limited to simple dependency names. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c10 --- Comment #10 from Swamp Workflow Management <swamp@suse.de> --- This is an autogenerated message for OBS integration: This bug (1135254) was mentioned in https://build.opensuse.org/request/show/709115 Factory / gcc9 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 Swamp Workflow Management <swamp@suse.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Whiteboard| |ibs:running:12597:moderate | |ibs:running:12598:moderate -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c12 --- Comment #12 from Swamp Workflow Management <swamp@suse.de> --- SUSE-SU-2019:3061-1: An update that solves two vulnerabilities and has 5 fixes is now available. Category: security (moderate) Bug References: 1114592,1135254,1141897,1142649,1142654,1148517,1149145 CVE References: CVE-2019-14250,CVE-2019-15847 Sources used: SUSE Linux Enterprise Module for Open Buildservice Development Tools 15-SP1 (src): gcc9-9.2.1+r275327-1.3.7 SUSE Linux Enterprise Module for Open Buildservice Development Tools 15 (src): gcc9-9.2.1+r275327-1.3.7 SUSE Linux Enterprise Module for Development Tools 15-SP1 (src): gcc9-9.2.1+r275327-1.3.7 SUSE Linux Enterprise Module for Development Tools 15 (src): gcc9-9.2.1+r275327-1.3.7 SUSE Linux Enterprise Module for Basesystem 15-SP1 (src): gcc9-9.2.1+r275327-1.3.7 SUSE Linux Enterprise Module for Basesystem 15 (src): gcc9-9.2.1+r275327-1.3.7 NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 Swamp Workflow Management <swamp@suse.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Whiteboard|ibs:running:12597:moderate |ibs:running:12598:moderate |ibs:running:12598:moderate | -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c13 --- Comment #13 from Swamp Workflow Management <swamp@suse.de> --- SUSE-SU-2020:0394-1: An update that solves two vulnerabilities and has 5 fixes is now available. Category: security (moderate) Bug References: 1114592,1135254,1141897,1142649,1142654,1148517,1149145 CVE References: CVE-2019-14250,CVE-2019-15847 Sources used: SUSE OpenStack Cloud Crowbar 8 (src): gcc9-9.2.1+r275327-1.3.9 SUSE OpenStack Cloud 8 (src): gcc9-9.2.1+r275327-1.3.9 SUSE OpenStack Cloud 7 (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server for SAP 12-SP3 (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server for SAP 12-SP2 (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server for SAP 12-SP1 (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server 12-SP5 (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server 12-SP4 (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server 12-SP3-LTSS (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server 12-SP3-BCL (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server 12-SP2-LTSS (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server 12-SP2-BCL (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Server 12-SP1-LTSS (src): gcc9-9.2.1+r275327-1.3.9 SUSE Linux Enterprise Module for Toolchain 12 (src): gcc9-9.2.1+r275327-1.3.9 SUSE Enterprise Storage 5 (src): gcc9-9.2.1+r275327-1.3.9 HPE Helion Openstack 8 (src): gcc9-9.2.1+r275327-1.3.9 NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 Maintenance Robot <maint-coord+maintenance_robot@suse.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Whiteboard|ibs:running:12598:moderate | -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1135254 http://bugzilla.suse.com/show_bug.cgi?id=1135254#c14 --- Comment #14 from Swamp Workflow Management <swamp@suse.de> --- openSUSE-SU-2020:0716-1: An update that solves two vulnerabilities and has 8 fixes is now available. Category: security (moderate) Bug References: 1114592,1135254,1141897,1142649,1142654,1148517,1149145,1149995,1152590,1167898 CVE References: CVE-2019-14250,CVE-2019-15847 Sources used: openSUSE Leap 15.1 (src): cross-nvptx-gcc9-9.3.1+git1296-lp151.2.1, gcc9-9.3.1+git1296-lp151.2.2 -- You are receiving this mail because: You are on the CC list for the bug.
participants (2)
-
bugzilla_noreply@novell.com
-
bugzilla_noreply@suse.com