2.1.6. Package dependencies
The Debian system offers a consistent set of binary packages through its versioned binary dependency declaration mechanism in the control file fields. Here is a bit over simplified definition for them.
- “Depends”
- This declares an absolute dependency and all of the packages listed in this field must be installed at the same time or in advance.
- “Pre-Depends”
- This is like Depends, except that it requires completed installation of the listed packages in advance.
- “Recommends”
- This declares a strong, but not absolute, dependency. Most users would not want the package unless all of the packages listed in this field are installed.
- “Suggests”
- This declares a weak dependency. Many users of this package may benefit from installing packages listed in this field but can have reasonable functions without them.
- “Enhances”
- This declares a weak dependency like Suggests but works in the opposite direction.
- “Breaks”
- This declares a package incompatibility usually with some version specification. Generally the resolution is to upgrade all of the packages listed in this field.
- “Conflicts”
- This declares an absolute incompatibility. All of the packages listed in this field must be removed to install this package.
- “Replaces”
- This is declared when files installed by this package replace files in the listed packages.
- “Provides”
- This is declared when this package provide all of the files and functionality in the listed packages.
Note
Please note that defining “Provides”, “Conflicts” and “Replaces” simultaneously to an virtual package is the sane configuration. This ensures that only one real package providing this virtual package can be installed at any one time.
- 现代 C++ 教程:高速上手 C++ 11/14/17/20
- linux-5.10.y-prjc-lts 源码
- APT 2.2.4 源码
- Linux 内核调度器源码分析
- 《操作系统真象还原》第 0/1 章
- 《LInux 内核设计》第 2 章
- 《Linux 内核观测技术 BPF》第 1/2 章