Hi, Recently I switched from 32bits Debian GNU/Linux to 64bits Debian GNU/Linux. Suddenly valgrind stops working exactly the same symptom. (Valgrind worked in 32bits Debian GNU/Linux just fine.) uname -a Linux vm-debian-amd64 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1 x86_64 GNU/Linux I am debugging mozilla thunderbird client. The binary is linked to dynamic libraries as follows. ishikawa@vm-debian-amd64:/REF-OBJ-DIR/objdir-tb3$ ldd mozilla/dist/bin/thunderbird-bin linux-vdso.so.1 (0x00007fffa73ff000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f60a6449000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f60a6245000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f60a5f3d000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f60a5c3e000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f60a5a28000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f60a567c000) /lib64/ld-linux-x86-64.so.2 (0x00007f60a6680000) ishikawa@vm-debian-amd64:/REF-OBJ-DIR/objdir-tb3$ I thought initially that the problem was caused by the mixing of 64bits and 32bits libraries (My long term goal was to create 32bits binary and debug it, so I installed 32bits libraries.) But right now, 64bits native binary cannot be run under valgrind. ==15417== Memcheck, a memory error detector ==15417== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. ==15417== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info ==15417== Command: /REF-OBJ-DIR/objdir-tb3/mozilla/dist/bin/thunderbird-bin -profile /REF-OBJ-DIR/objdir-tb3/mozilla/_tests/mozmill/mozmillprofile -jsbridge 24242 -foreground ==15417== 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: Cannot continue -- exiting now. Sorry. I have already installed libc6-dbg installed. From the posts above, do I have to compile the source again using a different GCC compile description (the source files of every single program that I want to run under valgrind) ? That is tough :-( An easy way out will be preferred. Where can I tweak valgrind so that it won't look for strlen in cases like this (like adding -no-search-strlen as command option)? TIA