Listet die vollständige Abhängigkeitsliste eines Pakets auf

Listet die vollständige Abhängigkeitsliste eines Pakets auf

Ich versuche, die Pakete aufzulisten, die für die Installation von Ruby erforderlich sind. Zum Beispiel unter Archlinux:

$ pacman -Si ruby
Repository      : extra
Name            : ruby
Version         : 2.7.1-3
Description     : An object-oriented language for quick and easy programming
Architecture    : x86_64
URL             : https://www.ruby-lang.org/en/
Licenses        : BSD  custom
Groups          : None
Provides        : None
Depends On      : gdbm  openssl  libffi  libyaml  gmp  zlib  rubygems  ruby-irb
Optional Deps   : ruby-docs: Ruby documentation
                  tk: for Ruby/TK
Conflicts With  : None
Replaces        : None
Download Size   : 3.30 MiB
Installed Size  : 13.34 MiB
Packager        : Anatol Pomozov <[email protected]>
Build Date      : Sat 22 Aug 2020 03:46:33 IST
Validated By    : MD5 Sum  SHA-256 Sum  Signature

Mit anderen Worten, Depends On : gdbm openssl libffi libyaml gmp zlib rubygemsdas ist, was ich in Ubuntu will.

Unter Ubuntu versuche ich Folgendes:

$ apt-cache show ruby

Die Ausgabe ist:

Package: ruby
Architecture: amd64
Version: 1:2.5.1
Multi-Arch: allowed
Priority: optional
Section: interpreters
Source: ruby-defaults
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Antonio Terceiro <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 37
Provides: irb, rdoc, rubygems
Depends: ruby2.5
Suggests: ri, ruby-dev
Conflicts: ruby-activesupport-2.3, ruby-activesupport-3.2
Breaks: apt-listbugs (<< 0.1.6), rbenv (<= 0.4.0-1), ruby-debian (<< 0.3.8+b3), ruby-switch (<= 0.1.0)
Replaces: irb, rdoc, rubygems
Filename: pool/main/r/ruby-defaults/ruby_2.5.1_amd64.deb
Size: 5712
MD5sum: 4fbbfcf2431190a889f2430ffd017110
SHA1: 2b56994915b61fe6009613e0b879d9de16699206
SHA256: b01fd79a656f1e36542d1dd1046713ffb2d5f29902e433d06884333fcb151488
Homepage: http://www.ruby-lang.org/
Description-en: Interpreter of object-oriented scripting language Ruby (default version)
 Ruby is the interpreted scripting language for quick and easy
 object-oriented programming.  It has many features to process text
 files and to do system management tasks (as in perl).  It is simple,
 straight-forward, and extensible.
 .
 This package is a dependency package, which depends on Debian's default Ruby
 version (currently v2.5).
Description-md5: 9b1885fba57cb2974ce14902f85d3e27
Task: kubuntu-desktop, kubuntu-full
Supported: 5y

Es listet keine Pakete wieopenssloderzlibals Abhängigkeit. Aber wenn ich versuche, zu reinigenopenssl(das ist gefährlich, und ich habe gerade den Befehl ausgeführt und die Taste N gedrückt, um das Entfernen zu überspringen), es führt auch Ruby in der Entfernungsliste auf. Das bedeutet, dass Ruby von OpenSSL abhängt.

Ich habe auch Antworten wie diese verfolgtDas, das die Pakete auflistet, die von Ruby abhängen, nicht die Pakete, von denen Ruby abhängt.

Wenn Sie fragen, warum das wichtig ist, liegt der Grund darin, dass ich eine Anleitung zum Kompilieren von Ruby mit verschiedenen optflags (CFLAGS) für die Leistung schreibe, hauptsächlich für Arch. Dann wollte ich auch Ubuntu hinzufügen und habe keine vollständige Abhängigkeitsliste erhalten, die zum Erstellen von Ruby erforderlich ist. Ich kann die Arch-Pakete nicht auflisten, da Ubuntu einige andere und seltsame Namen hat. Wie „Aufruf base-develals“ build-essentialusw.

Wie kann man Pakete auflisten?

Antwort1

Verwendung apt-rdependsaus dem gleichnamigen Paket:

$ apt-rdepends ruby
ruby
  Depends: ruby2.7
ruby2.7
  Depends: libc6 (>= 2.4)
  Depends: libruby2.7 (>= 2.7.0~preview1)
  Depends: rubygems-integration (>= 1.8)
libc6
  Depends: libcrypt1
  Depends: libgcc-s1
libcrypt1
  Depends: libc6 (>= 2.25)
libgcc-s1
  Depends: gcc-10-base (= 10.2.0-6)
  Depends: libc6 (>= 2.14)
gcc-10-base
...
ca-certificates
  Depends: debconf (>= 0.5)
  Depends: debconf-2.0
  Depends: openssl (>= 1.1.1)
openssl
  Depends: libc6 (>= 2.15)
  Depends: libssl3 (>= 3.0.0~~alpha1)
libssl3
  Depends: debconf (>= 0.5)
  Depends: debconf-2.0
  Depends: libc6 (>= 2.25)

Da Sie interessiert sind anGebäudedes Pakets benötigen Sie möglicherweise die -bOption, die die Build-Abhängigkeiten des Pakets rekursiv auflistet.

verwandte Informationen