我试图找出Qt Assistant需要部署哪些库。我ldd在Linux上使用过此功能。
我发现ldd提供了-u“打印未使用的依赖项”的选项。听起来好像有某种依赖(部署)并不需要(总是)。所以我又运行了两个ldd命令:
~$ ldd -u ~/Qt/5.10.0/gcc_64/bin/assistant
Unused direct dependencies:
/lib/x86_64-linux-gnu/libQt5Network.so.5
/lib/x86_64-linux-gnu/libQt5Sql.so.5
/lib/x86_64-linux-gnu/mesa/libGL.so.1
/lib/x86_64-linux-gnu/libpthread.so.0
/lib/x86_64-linux-gnu/libm.so.6
/lib/x86_64-linux-gnu/libgcc_s.so.1
~$ ldd -r -u ~/Qt/5.10.0/gcc_64/bin/assistant
Unused direct dependencies:
/lib/x86_64-linux-gnu/libQt5Network.so.5
/lib/x86_64-linux-gnu/mesa/libGL.so.1
/lib/x86_64-linux-gnu/libpthread.so.0
/lib/x86_64-linux-gnu/libm.so.6
/lib/x86_64-linux-gnu/libgcc_s.so.1
我试图找出正在发生的事情,但我并不完全了解。
我的问题是:
什么是未使用的直接依赖项(这对我来说是矛盾的)?
是否有可能找出Qt Assistant
实际上是否需要未使用的直接依赖项(然后再启动它并等待错误)?
上面的命令行之间到底有什么区别?为什么
第一个列表不包含第二个列表libQt5Sql
?
米脂