6

I'm using valgrind to try and locate the cause of a violating memory access in a C-cum-C++ program. Even with this access averted (i.e. when everything runs fine), valgrind tells me:

==11436== Memcheck, a memory error detector
==11436== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==11436== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==11436== Command: bin/monetdb-bp-reader /home/eyalroz/dbfarms/monetdb/tpch-sf-1
==11436== 
--11436-- WARNING: Serious error when reading debug info
--11436-- When reading debug info from /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.24:
--11436-- Ignoring non-Dwarf2/3/4 block in .debug_info
--11436-- WARNING: Serious error when reading debug info
--11436-- When reading debug info from /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.24:
--11436-- Last block truncated in .debug_info; ignoring
--11436-- WARNING: Serious error when reading debug info
--11436-- When reading debug info from /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.24:
--11436-- parse_CU_Header: is neither DWARF2 nor DWARF3 nor DWARF4
--11436-- WARNING: Serious error when reading debug info
--11436-- When reading debug info from /lib/x86_64-linux-gnu/libgcc_s.so.1:
--11436-- Ignoring non-Dwarf2/3/4 block in .debug_info
--11436-- WARNING: Serious error when reading debug info
--11436-- When reading debug info from /lib/x86_64-linux-gnu/libgcc_s.so.1:
--11436-- Last block truncated in .debug_info; ignoring
--11436-- WARNING: Serious error when reading debug info
--11436-- When reading debug info from /lib/x86_64-linux-gnu/libgcc_s.so.1:
--11436-- parse_CU_Header: is neither DWARF2 nor DWARF3 nor DWARF4

What should I do about these warnings? Should I...

  • Fix them somehow? It's in the system libraries, not in my code; is it even possible to do something about them?
  • Suppress them somehow (but without suppressing any bona-fide error message)?
  • Ignore them - if I can neither fix nor suppress?

Notes: I use GNU/Linux Mint 18.4 with kernel 4.13.0-32 on an X86_64 machine.

einpoklum
  • 118,144
  • 57
  • 340
  • 684

1 Answers1

7

This could be due to enabled compressed debug symbols in libstdc++.so, see relevant debian bug report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=810295.

Valgrind did not support compressed debug symbols in 3.11 version, but it does support them now, see https://bugs.kde.org/show_bug.cgi?id=303877. I would suggest to update Valgrind to a latest version or build it from sources: http://valgrind.org/downloads/repository.html.

ks1322
  • 33,961
  • 14
  • 109
  • 164
  • 5
    I have a similar problem with valgrind 3.13.x, so I don't think upgrading would fix anything. – Ash Oct 01 '18 at 20:57
  • 1
    Try to upgrade to Valgrind 3.17.0 or later: _"3.17.0 fixes a number of bugs and adds some functional changes: support for GCC 11, Clang 11, DWARF5 debuginfo..."_ [https://valgrind.org/docs/manual/dist.news.html](https://valgrind.org/docs/manual/dist.news.html) – Joe M. Aug 02 '22 at 20:59