|
From: John R. <jr...@bi...> - 2010-03-09 18:25:03
|
> 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 > > > What is valgrind trying to find that it can't? The code for strlen, with the name "strlen", in ld-linux-x86-64.so.2. The code is there, and "must" be re-directed to valgrind's replacement strlen, else "false positive" errors abound [because memcheck does not understand the actual code.] Unfortunately, the code that is there has no symbol, and memcheck is too proud to look for the code by value. So memcheck gives up. Revert to the previous ld-linux-x86-64.so.2. Or, perhaps re-compile ld-linux-x86-64.so.2 with "-g", then be sure that the symbol "strlen" exists in ld-linux-x86-64.so.2. -- |