【发布时间】:2015-09-23 11:27:40
【问题描述】:
如何识别 Makefile 中的冗余库?有什么工具可以分析图书馆的使用情况吗?
对于使用 make 构建的 c++ 程序,我想找出程序不再使用但仍由 make 实用程序链接的库。
【问题讨论】:
标签: c++ c makefile shared-libraries
如何识别 Makefile 中的冗余库?有什么工具可以分析图书馆的使用情况吗?
对于使用 make 构建的 c++ 程序,我想找出程序不再使用但仍由 make 实用程序链接的库。
【问题讨论】:
标签: c++ c makefile shared-libraries
如果您使用的是 Linux,那么您可能应该使用 ldd --unused:
$ ldd --help
Usage: ldd [OPTION]... FILE...
-u, --unused print unused direct dependencies
这是一个例子:
$ ldd -u ./a.out
Unused direct dependencies:
/u01/app/oracle/product/11.2.0/cl11203/lib/libclntsh.so.11.1
/usr/local/CC/gcc-4.8.2/lib64/libstdc++.so.6
/lib64/libm.so.6
/usr/local/CC/gcc-4.8.2/lib64/libgcc_s.so.1
【讨论】: