https://bugs.kde.org/show_bug.cgi?id=407039

            Bug ID: 407039
           Summary: strlen was not found whilst processing symbols from
                    the object with soname: ld-linux-x86-64.so.2
           Product: valgrind
           Version: 3.15 SVN
          Platform: Ubuntu Packages
                OS: Linux
            Status: REPORTED
          Severity: crash
          Priority: NOR
         Component: memcheck
          Assignee: jsew...@acm.org
          Reporter: ilya.fo...@mq.edu.au
  Target Milestone: ---

I have an absolutely fresh installation of Ubuntu 19.04 and I compiled valgrind
3.15 from sources:
./autogen.sh
./configure --prefix=/opt/valgrind315/ --enable-only64bit [<= these options do
not really matter]
make
sudo make install

Each time I run it, I get the following:

$ /opt/valgrind315/bin/valgrind -v ls -l
==16904== Memcheck, a memory error detector
==16904== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==16904== Using Valgrind-3.15.0-608cb11914-20190413 and LibVEX; rerun with -h
for copyright info
==16904== Command: ls -l
==16904== 
--16904-- Valgrind options:
--16904--    -v
--16904-- Contents of /proc/version:
--16904--   Linux version 5.0.0-13-generic (buildd@lcy01-amd64-020) (gcc
version 8.3.0 (Ubuntu 8.3.0-6ubuntu1)) #14-Ubuntu SMP Mon Apr 15 14:59:14 UTC
2019
--16904-- 
--16904-- Arch and hwcaps: AMD64, LittleEndian,
amd64-cx16-lzcnt-rdtscp-sse3-ssse3-avx-avx2-bmi-f16c-rdrand
--16904-- Page sizes: currently 4096, max supported 4096
--16904-- Valgrind library directory: /opt/valgrind315/lib/valgrind
--16904-- Reading syms from /usr/bin/ls
--16904--    object doesn't have a symbol table
--16904-- Reading syms from /usr/lib/x86_64-linux-gnu/ld-2.29.so
--16904--   Considering /usr/lib/x86_64-linux-gnu/ld-2.29.so ..
--16904--   .. CRC mismatch (computed c34345a7 wanted 87a50cbd)
--16904--    object doesn't have a symbol table
valgrind:  Fatal error at startup: a function redirection
valgrind:  which is mandatory for this platform-tool combination
valgrind:  cannot be set up.  Details of the redirection are:
valgrind:  
valgrind:  A must-be-redirected function
valgrind:  whose name matches the pattern:      strlen
valgrind:  in an object with soname matching:   ld-linux-x86-64.so.2
valgrind:  was not found whilst processing
valgrind:  symbols from the object with soname: ld-linux-x86-64.so.2
valgrind:  
valgrind:  Possible fixes: (1, short term): install glibc's debuginfo
valgrind:  package on this machine.  (2, longer term): ask the packagers
valgrind:  for your Linux distribution to please in future ship a non-
valgrind:  stripped ld.so (or whatever the dynamic linker .so is called)
valgrind:  that exports the above-named function using the standard
valgrind:  calling conventions for this platform.  The package you need
valgrind:  to install for fix (1) is called
valgrind:  
valgrind:    On Debian, Ubuntu:                 libc6-dbg
valgrind:    On SuSE, openSuSE, Fedora, RHEL:   glibc-debuginfo
valgrind:  
valgrind:  Note that if you are debugging a 32 bit process on a
valgrind:  64 bit system, you will need a corresponding 32 bit debuginfo
valgrind:  package (e.g. libc6-dbg:i386).
valgrind:  
valgrind:  Cannot continue -- exiting now.  Sorry.

I installed successfully debug symbols for ld:
$ nm /usr/lib/debug/lib/x86_64-linux-gnu/ld-2.29.so | grep '\bstr'
00000000000206e0 t strchr
000000000001d120 t strcmp
0000000000020da0 t strcspn
000000000001d0d0 t strdup
0000000000020900 t strlen
000000000001e560 t strncmp
0000000000020aa0 t strnlen
000000000001b6a0 t strsep

I also tried to run with some extra options following, but I got the same
result:
--allow-mismatched-debuginfo=yes
--read-inline-info=yes
--extra-debuginfo-path=[different variants]

SOFTWARE/OS VERSIONS
Linux: Ubuntu 19.04
Compiler: gcc 8.3.0

ADDITIONAL INFORMATION
I need to compile my own version of valgrind (the reason is that our software
has a huge .bss section, so default repository version of valgrind can not
handle it).
Before I compiled and ran it with no problems at all (Ubuntu 16.04), and I'm
using exactly the same settings now.

Valgrind 3.13 drops endless number of Conditional jump or move depends on
uninitialised value(s) in /usr/lib/x86_64-linux-gnu/libc-2.29.so

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to