我有一个拥有30多个开源软件包的软件系统,其中大多数都使用GNU Autotools套件。
是否有自动生成包到包依赖关系图的工具?即我想看看gst-plugins-good之类的东西 - > gst-plugins-base - > gstreamer - >油嘴。
答案 0 :(得分:0)
我不这么认为,但你可能会用这些知识鞭打一些东西:
configure.ac
或configure.in
的文件。PKG_CHECK_MODULES([...],[...]...)
package
或package >= version
形式的包要求。requirement
字符串可能与包tarball名称不同;包含package.pc
或package.pc.in
的tarball提供了包package
。答案 1 :(得分:0)
可能不是,因为这是一个难题。如果只有一种方法来构建一个包,那可能不会太糟糕,但总的来说情况并非如此。您可以将--enable-foo
和--with-foo
选项传递到configure
。这些有时也依赖于包,需要更多包。大多数Linux发行版(我认为但不完全确定)为yum
或zypper
或apt
维护这些依赖性列表,或者包装管理器是手动的,只有一层深,将其留给包管理器来遍历图表。发行版的软件包仅以一种方式构建。这些名单也被破坏并不罕见。