我最近的工作涉及很多 Debian 打包,我使用Debian 新维护者指南作为我的主要参考。
我还没有完全理解的是如何将${shlibs:Depends}
其解析为特定的包和版本。“如何”是指从变量到该字段中包的最终列表的详细步骤。${shlibs:Depends}
Depends
第 4 章说:
dh_shlibdeps(1) 计算二进制包的共享库依赖关系。它为每个二进制包生成一个 ELF 可执行文件和共享库的列表。此列表用于替换 ${shlibs:Depends}。
我想我真正感兴趣的是“为每个二进制包生成ELF可执行文件和共享库的列表”的详细步骤,例如使用的信息源是什么。
我还查看了 Debian 政策手册中的“8.6.4. shlibs 系统”部分,它确实提供了一些信息来源,但似乎也没有谈论详细的步骤。
我当然可以深入研究dh_shlibdeps
脚本以弄清楚它是如何完成的,但是我不愿意这样做,因为我还没有学习 Perl,所以我想看看是否还有其他我不知道的参考资料已经涵盖了这一点。如果没有这样的参考,我肯定会阅读代码。
谢谢!
这个话题对我来说也是新的,但是这里可以收集什么(可能没有完全排序)并省略了一些全局设置文件。
符号解析很安静,一些工具只是在依赖库而不是依赖包上运行,只是为 Debian 包构建器准备 lib Debian 包中包含的 lib 信息。无论如何你检查:
man dpkg-shlibdeps
以及底部注释中提到的其他相关手册页。