On Mon, 2017-04-17 at 06:36 +0000, Wuweijia wrote: > > > The output as below: ... > localhost:/system/bin # LD_PRELOAD=/system/bin/linker64 ./valgrind > --tool=massif -v --pages-as-heap=yes ./mcfPQ > --gtest_filter=*DISTANCE_001_001* ... > CANNOT LINK EXECUTABLE "./mcfPQ": can't read file "/system/lib64": Is > a directory--------------------------why it link failed with – > pages-as-heap ? How can I resovle it ? > > libc: CANNOT LINK EXECUTABLE "./mcfPQ": can't read file > "/system/lib64": Is a directory > > libc: Fatal signal 6 (SIGABRT), code -6 in tid 20333 (massif-arm64-li) > > libc: Unable to open connection to debuggerd: Connection refused >
--pages-as-heap=yes means massif will do some hacks on the LD_PRELOAD variable to remove the preloaded valgrind shared object that replaces malloc/free/... So a guess is that there is a bad interaction between your LD_PRELOAD setting to /system/bin/linker64 and the way massif modifies LD_PRELOAD for --pages-as-heap=yes. A few questions: Is this an android platform ? why do you need to set this variable ? The best is probably to file a bug report on bugzilla with the above information and attach the output of valgrind --tool=massif -v -v -v -d -d -d --pages-as-heap=yes --trace-syscalls=yes .... and valgrind --tool=massif -v -v -v -d -d -d --pages-as-heap=no --trace-syscalls=yes .... Philippe ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users