이 짧은 미니 자습서는 다음과 같이 나타납니다. 독자 중 한 명인 Felipe의 우려에 대한 응답, 누가 우리에게 질문 :«Java를 사용하는 응용 프로그램을 어떻게 알 수 있습니까?«. 글쎄요, 그걸 알 수있는 방법은 없다고 생각 합니다만, 알 수있는 간단한 방법이 있습니다 저장소에 나열된 패키지 (즉, 애플리케이션)는 JAVA 패키지에 종속됩니다.. 다른 패키지에도 동일한 방법을 사용할 수 있습니다. 모노. |
가장 일반적인 방법은 패키지 X가 제대로 작동하기 위해 설치해야하는 다른 패키지를 찾는 것입니다. 이러한 필수 패키지를 종속성이라고하며 다음과 같이 찾을 수 있습니다.
apt-cache는 내 패키지에 따라 다릅니다.
Synaptic으로 이동하여 패키지를 찾고 그것을 마우스 오른쪽 버튼으로 클릭> 속성> 종속성.
그러나이 게시물의 목적은 X 패키지를 종속성으로 갖는 패키지를 정확히 찾아내는 것입니다. 다시 말해,이 경우 우리는 "어머니"패키지를 알고 있으며이 "어머니"패키지가 작동하기 위해 설치되어야하는 다른 패키지가 무엇인지 알고 싶습니다.
문제를 더 잘 이해하기 위해 예제로 이동하겠습니다. openjdk-6-jre 패키지에 의존하는 패키지를 감지하는 방법을 살펴 보겠습니다. 즉, JAVA에 의존하는 저장소에 나열된 애플리케이션을 감지하는 방법입니다.
터미널을 열고 다음과 같이 썼습니다.
apt-cache는 openjdk-6-jre를 rdepends
OpenOffice, FreeMind, OpenCol 등을 포함한 긴 패키지 목록이 나타납니다.
올바른 "어머니"패키지를 찾는 방법은 무엇입니까?
좋아, 지금까지는 쉽지만 검색해야 할 "어머니"패키지가 무엇인지 어떻게 알 수 있습니까? 글쎄, 이것은 약간의 전문 지식과 사전 분석이 필요합니다.
모든 MONO 기반 응용 프로그램을 알고 싶다고 가정합니다. 이 경우 내가 한 일은 내가 알고있는 MONO를 사용하는 애플리케이션 (GBrainy)의 종속성을 찾고이를 기반으로 "어머니"패키지를 감지하고 역 종속성을 찾는 것이 었습니다. 어려워 보이지만 말도 안돼요.
터미널을 열고 다음과 같이 썼습니다.
apt-cache는 gbrainy에 따라 다릅니다.
결과는 다음과 같습니다.
다름 : 모노 런타임
| 의존 : libc6
| 의존 : libc6.1
의존 : libc0.1
종속 항목 : libglib2.0-cil
의존 : libgtk2.0-0
종속 항목 : libgtk2.0-cil
종속 항목 : liblaunchpad-integration1.0-cil
종속 항목 : libmono-addins-gui0.2-cil
종속 항목 : libmono-addins0.2-cil
종속 항목 : libmono-cairo2.0-cil
종속 항목 : libmono-corlib2.0-cil
종속 항목 : libmono-posix2.0-cil
종속 항목 : libmono-system2.0-cil
의존 : librsvg2-2
의존성 : 모노-크 샤프-쉘
모노 런타임이 좋은 후보가 될 수있는 것 같았 기 때문에 모노 런타임에 의존하는 모든 패키지를 검색하기로 결정했습니다.
apt-cache는 모노 런타임을 rdepends
짜잔! MONO를 사용하는 모든 패키지가 나타납니다.
일부 MONO 패키지에 의존하는 모든 패키지의 전체 목록을 보려면 다음과 같이 작성할 수 있습니다.
apt-cache는 모노를 rdepends *
Pablo에게 답변 해 주셔서 감사하고 게시물에 감사드립니다 🙂
Pablo 넌 내 우상이야!
훌륭한 게시물입니다.
큰! 데이터 감사합니다!
총 분포를 사용하는 사람들을 위해 ………… 농담
RPM 기반 패키지 관리자를 사용하는 경우이 명령이 사용됩니다.
rpm -qR 패키지
예 :
리눅스 @ dhcppc3 : ~> rpm -qR xmms
/ 빈 / SH
/ 빈 / SH
rpmlib (PayloadFilesHavePrefix) <= 4.0-1
rpmlib (CompressedFileNames) <= 3.0.4-1
libICE.so.6
libSM.so.6
libX11.so.6
libXxf86vm.so.1
libc.so.6
libc.so.6 (GLIBC_2.0)
libc.so.6 (GLIBC_2.1)
libc.so.6 (GLIBC_2.3)
libc.so.6 (GLIBC_2.3.4)
libc.so.6 (GLIBC_2.4)
libc.so.6 (GLIBC_2.7)
libdl.so.2
libdl.so.2 (GLIBC_2.0)
libdl.so.2 (GLIBC_2.1)
libgdk-1.2.so.0
libglib-1.2.so.0
libgthread-1.2.so.0
libgtk-1.2.so.0
libpthread.so.0
libpthread.so.0 (GLIBC_2.0)
libpthread.so.0 (GLIBC_2.1)
libpthread.so.0 (GLIBC_2.3.2)
libxmms.so.1
rpmlib (PayloadIsLzma) <= 4.4.6-1