我有一个共享库(更具体地说是一个本机python模块),它引用了其他库中的一些符号。 ldd -r
显示无法在系统上动态解析库的哪些符号。例如:
# ldd -r /usr/lib/python3.4/site-packages/_selinux.cpython-34m.so
…
undefined symbol: selabel_digest (/usr/lib/python3.4/site-packages/_selinux.cpython-34m.so)
现在我有一个类似的系统,其中链接似乎有效,ldd不会报告任何未解析的符号 如何跟踪在该系统上解析某些符号的来源(共享库的文件名)?我希望这可以帮助我在第一个系统上正确连接。
答案 0 :(得分:2)
如何在该系统上跟踪如何以及从哪些来源(共享库的文件名)解析某些符号?
在“工作”系统上,运行
LD_DEBUG=symbols,bindings ldd -r _selinux.cpython-34m.so |&
grep selabel_digest