[OE-core] x86_64: ldd does not work (not a dynamic executable)

Ricardo Ribalda Delgado ricardo.ribalda at gmail.com
Mon Aug 20 10:06:00 UTC 2018


Hi

I think that I found a bug with ldd on sumo. Whenever I try to use it
on the target with an dynamic binary, it returns:

root at qt5122:~# ldd ./qtec_webcam
not a dynamic executable


The reason seems to be that it cannot find the dynamic linker:

It is searching for:
RTLDLIST="/lib/ld-linux.so.2 /lib64/ld-linux-x86-64.so.2
/libx32/ld-linux-x32.so.2"

whith ldd being at:
/lib/ld-linux-x86-64.so.2

This can be patched on glibc with:

git diff ./sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
b/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
index 44d76e8aa1..611efd56b0 100644
--- a/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
+++ b/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
@@ -1,3 +1,3 @@
 /LD_TRACE_LOADED_OBJECTS=1/a\
 add_env="$add_env LD_LIBRARY_VERSION=\\$verify_out"
-s_^\(RTLDLIST=\)\(.*lib\)\(\|64\|x32\)\(/[^/]*\)\(-x86-64\|-x32\)\(\.so\.[0-9.]*\)[
   ]*$_\1"\2\4\6 \264\4-x86-64\6 \2x32\4-x32\6"_
+s_^\(RTLDLIST=\)\(.*lib\)\(\|64\|x32\)\(/[^/]*\)\(-x86-64\|-x32\)\(\.so\.[0-9.]*\)[
   ]*$_\1"\2\4\6 \264\4-x86-64\6 \2x32\4-x32\6 \2\3\4\5\6"_

I can very easily make a patch for this and send it, but  it is too
strange, that I have been the first person to stumble with this thing
:), and I do not know if this is a bug OE-specific or shall I also
ping upstream.

Any ideas?

Thanks!


-- 
Ricardo Ribalda



More information about the Openembedded-core mailing list