deb 包依赖版本有点没用?

deb 包依赖版本有点没用?

我第一次创建 deb 包(使用 CPack,但我认为这不相关),并且对依赖包版本控制感到困惑。我的应用程序依赖于 2 个 Boost 库,我需要最低版本 v1.71,所以我想法我可以使用这个字符串:

"libboost-program_options (>= 1.71), libboost-log (>= 1.71)"

但事实证明这些包有以他们的名字命名的版本! 因此我必须使用这个字符串才能安装该包:

"libboost-program_options1.71.0 (>= 1.71), libboost-log1.71.0  (>= 1.71)"

这使得最低版本规范变得毫无用处。所以现在如果有人安装了 v1.73 的库,这本来是完全没问题的,但却apt无法满足依赖关系!

“真正的”软件包维护者如何解决这个问题?

答案1

您可以使用元包libboost-program-options-devlibboost-log-dev

他们会拉动相关的 libboost-program_optionsx.xx.x

因此,depends 行将如下所示:

libboost-program-options-dev (>= 1.71), libboost-log-dev (>= 1.71)

相关内容