Closed dxcvvxd closed 1 year ago
First make sure that LD_LIBRARY_PATH
is unset and LD_PRELOAD
is sane.
This could be an instance of the duplicate SONAME
issue like #13992. But as of now I doubt it, because $PREFIX/bin/mpd
does not depend on $PREFIX/lib/libEGL.so
in its DT_NEEDED
tree, and IIUC the DT_NEEDED
entry libEGL.so
in /system/lib64/libgui.so
should reference /system/lib64/libEGL.so
. In fact this issue does not reproduce on my Android 8.1.0 environment.
That said, there could be a dynamic linker that behaves differently. I suggest sharing the strace
output of mpd
command from which we can guess the actual behavior. (Fake ldd
command such as libtree
cannot be used in this case.)
i tried unsetting the ld lib path, and it worked. but do i have to do that everytime now? speaking of strace, can i output it to a file like a logcat? there's too much errors to fit on one screen
It is known that LD_LIBRARY_PATH
causes troubles when it contains $PREFIX/lib
. In the past LD_LIBRARY_PATH
seems to have been used in Termux. But it is not needed now, because Android 7.0 (API 24) or later support DT_RUNPATH
. LD_LIBRARY_PATH
should be unset unless absolutely necessary.
Redirect of strace
output can be done as:
strace mpd 2>strace.log
But it is no more needed, as this issue has already been resolved.
thanks
It is known that
LD_LIBRARY_PATH
causes troubles when it contains$PREFIX/lib
. In the pastLD_LIBRARY_PATH
seems to have been used in Termux. But it is not needed now, because Android 7.0 (API 24) or later supportDT_RUNPATH
.LD_LIBRARY_PATH
should be unset unless absolutely necessary.
Yeah, so issue here is that app variant installed is for android-5 and 6:
TERMUX_APP__PACKAGE_VARIANT=apt-android-5
Install an apt-android-7 variant instead since you are on android-12
What fixed the same error for me (but for ffmpeg) is apt install libandroid-stub
Problem description
running mpd results in an error
CANNOT LINK EXECUTABLE "mpd": cannot locate symbol "eglDestroySyncKHR" referenced by "/system/lib64/libgui.so"...
no idea why that happens (especially the egl part, why does it need it?). thanks.What steps will reproduce the bug?
run
mpd
get an errorWhat is the expected behavior?
it should just work
System information
termux-info: