gcc 将共享库与依赖库链接
Posted
技术标签:
【中文标题】gcc 将共享库与依赖库链接【英文标题】:gcc linking shared libraries with dependent libraries 【发布时间】:2012-06-17 03:10:19 【问题描述】:我有一个包含多个可执行目标和多个共享库的复杂项目。共享库目前没有链接它们的依赖共享库,结果是用于构建可执行文件的链接器参数非常长且难以维护。我想添加依赖项,以便 Makefile 变得更干净。
我想添加以下内容(示例):
gcc -shared -o libshared.so -lshared_dependent1 -lshared_dependent2 objfile1.o objfile2.o
有没有办法测试 libshared.so 中的所有符号是否会根据该行解析? 如果指定的任何 shared_dependent 库是不必要的,有没有办法打印出来?
提前致谢。
【问题讨论】:
【参考方案1】:我知道如何强制没有未定义的符号:
-Wl,--no-undefined
因为 autotools 经常抱怨 Windows 上缺少此功能。
我不知道是否可以检查是否有任何未使用的库,除了将它们一一排除。
【讨论】:
以上是关于gcc 将共享库与依赖库链接的主要内容,如果未能解决你的问题,请参考以下文章