【问题标题】:Specifying a newer C++ standard library dependency for a Debian package为 Debian 软件包指定较新的 C++ 标准库依赖项
【发布时间】:2021-07-02 16:40:25
【问题描述】:

我对 Debian 打包完全陌生,我发现的文档要么是非常不完整的教程(带有过于具体的示例),要么是百科全书式的手册(带有很少的示例)。从这些中,我试图拼凑如何打包一些我无法控制的 C++17 代码,以使其更容易在下游安装。目标机器运行 Debian Buster,其稳定的 GCC 是 v8.3。这还不够新,所以我必须在构建机器上从testing 安装 GCC 10。

如何在 Debian control 文件中反映 libstdc++ 的更新要求?够了吗:

Depends: libstdc++6 (>= 10.2.1)

这里的版本非常随意(我知道它可以工作); libstdc++6 对吗?如何表明这个包来自不同的来源?

【问题讨论】:

  • 很容易指出使用靶心 g++-10 编译的应用程序,因为它依赖于 libstdc++.so.6 -> libstdc++.so.6.0.28。 ..... 如何与 Debian Buster 一起使用:libstdc++.so.6.0.28 必须存在。 IE。指向libstdc++.so.6 -> libstdc++.so.6.0.28 启动应用程序。 ...... 版本概览gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html

标签: c++ debian packaging libstdc++ deb


【解决方案1】:

事实证明:

Depends: libstdc++6 (>= 10.2.1)

...就足够了,Apt 只会抱怨并拒绝安装,直到您手动添加了提供该软件包的源。感谢@KnudLarsen 的评论,我需要的实际最低版本是9.1.0。

【讨论】:

    猜你喜欢
    • 2021-02-09
    • 1970-01-01
    • 1970-01-01
    • 2012-01-18
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    • 1970-01-01
    • 2022-11-11
    相关资源
    最近更新 更多