【问题标题】:How to install related package automatically with .deb package?如何使用 .deb 包自动安装相关包?
【发布时间】:2011-11-02 11:52:39
【问题描述】:

我尝试为我的程序创建 .deb 包。

需要 ImLib2-dev 包。

我想让 .deb 包自动安装 ImLib2-dev 包。

Package : MyProject
Version : 1.0.0.0
Section : base
Priority : optional
Architecture : i386
Depends:
Maintainer : xxx <xxx@xxx.com>
Description : Install Package

这是.deb包的DEBIAN目录下的控制文件。

我该怎么办?

添加

我阅读了一些关于控制文件的文档,了解了Depend,Pre-Depend。

但它只是检查所需的包是否已安装并在未安装时退出

不安装软件包。有没有安装不存在的包的选项?


sudo dpkg -i ~~.deb
apt-get -f install 

安装依赖项,但我想做的是使用 dpkg 立即完成。

所以我尝试找到在 deb 包中更改控制文件的方法。

【问题讨论】:

  • 如果你依赖的包在存档中可用,apt-getSoftware Center 甚至gdebi(我想)会问你是否要软件为你安装依赖项.

标签: ubuntu package debian deb


【解决方案1】:

您想通过dpkgapt-get 查看安装过程中的行为。 apt-get(和 APT 的其他 UI)与 APT 存储库一起使用,并将检查 Depends 并在未安装这些软件包时要求安装它们。 dpkg 只能看到提交给它的文件。

【讨论】:

  • 感谢您的回答。你说的是 dpkg 不会自动安装它们的依赖项?我发现 'apt-get -f install' 安装依赖项,但我想做的是使用 dpkg -i ~~.deb 安装。没有办法吗?
  • DPKG 不会自动安装依赖;如果它找到一个依赖项,它就没有方法来查找和获取该依赖项。这就是 APT(apt-get、aptitude、synaptic 等)的用途。
  • 那么.deb包文件夹中的控制文件只是用于声明依赖关系?有人说编辑控制文件可以解决这个问题。
  • 控制文件指定依赖是什么。它没有声明在哪里或如何找到该依赖项。如果要自动安装依赖,需要使用APT。
  • 我明白你说的。非常感谢您解决了我的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-18
相关资源
最近更新 更多