【问题标题】:G++/GCC: how to make your app tell OS to download libs it needs into system?G++/GCC:如何让你的应用程序告诉操作系统将它需要的库下载到系统中?
【发布时间】:2011-06-09 02:27:02
【问题描述】:

例如,我正在创建一些使用 boost 或 openCV 的应用程序,并且在我的开发人员机器上安装了所有这些,因此应用程序可以毫无问题地编译。但我想知道如何让应用程序告诉操作系统下载我在第一次运行时使用的库?可能吗? (对不起 - 我是 linux 菜鸟)

【问题讨论】:

  • 可以使用启动器,如果未安装 lib,则应用程序根本无法启动
  • 我添加了一个“linux”标签。您可能应该使用您的 linux 发行版的特定版本重新标记它...一旦进入有关如何安装 lib 的血腥细节,它将取决于实际发行版(debian/redhat ...)

标签: c++ c linux dependencies


【解决方案1】:

这就是包管理器的用途。您所做的是编译您的项目,然后使用适当的工具构建一个包(例如 .deb 或 .rpm)。这样做时,您可以指定包中的各种文件应该放在哪里,以及您的包依赖的其他包。这些被称为“依赖项”,像 apt 和 rpm 这样的包管理器非常擅长解决它们。

这里是制作软件包的官方 debian 指南,让您有一个想法: http://www.debian.org/doc/maint-guide/

或者,您可以按原样分发程序并在安装说明中列出依赖项;然后,用户必须在运行您的程序之前通过他们的包管理器手动安装它们。

【讨论】:

    猜你喜欢
    • 2013-05-21
    • 2012-07-12
    • 1970-01-01
    • 1970-01-01
    • 2018-02-07
    • 2021-12-25
    • 2019-03-07
    • 2012-02-06
    • 1970-01-01
    相关资源
    最近更新 更多