apt: deb 패키지를 설치하지 않고 필요한 종속성을 나열합니다.

apt: deb 패키지를 설치하지 않고 필요한 종속성을 나열합니다.

제가 작성 중인 빌드 도구(일종의 종속성 캐싱 시스템을 구현하고 싶습니다)에 대해 .deb 패키지에 대해 누락된 종속성이 무엇인지 알고 싶습니다.없이그것을 설치하고 (아마도) apt-get 출력을 읽는 것입니다. 즉:소프트웨어에서 비대화형으로 수행할 수 있어야 합니다. 이는 인간이 수행해야 하는 작업이 아닙니다.

수동 절차는 다음과 같습니다.

dpkg -i something.deb || true
apt-get -f install

이 시점에서 apt는 다음과 같은 내용을 인쇄합니다.

The following extra packages will be installed:
  ca-certificates git git-man krb5-locales libasn1-8-heimdal libcurl3-gnutls
  libedit2 liberror-perl libgssapi-krb5-2 libgssapi3-heimdal
  libhcrypto4-heimdal libheimbase1-heimdal libheimntlm0-heimdal
  libhx509-5-heimdal libidn11 libk5crypto3 libkeyutils1 libkrb5-26-heimdal
  libkrb5-3 libkrb5support0 libldap-2.4-2 libroken18-heimdal librtmp0
  libruby1.9.1 libsasl2-2 libsasl2-modules libsasl2-modules-db
  libwind0-heimdal libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxext6
  libxmuu1 libyaml-0-2 openssh-client openssl patch rsync ruby ruby1.9.1 xauth

그러한 목록을 확실하게 얻고 싶습니다.설치하지 않고.deb(어쩌면 설치 후 패키지를 제거할 수 있고 결국 이전과 같은 시스템을 갖기 때문일 수 있음) 그러나 특히패키지 목록을 위해 apt-get 출력을 수동 및 대화식으로 구문 분석할 필요 없이.

이러한 작업을 수행하기 위해 apt-get, apt-cache, aptitude 또는 Debian 및/또는 Ubuntu에서 사용할 수 있는 패키지를 사용할 수 있습니다.

답변1

dpkg -I package.deb

패키지 정보를 표시하는 명령입니다. 에 따라 찾을 수 있습니다.

관련 정보