패키지의 빌드 종속성을 어떻게 찾습니까?


48

어떤 패키지를 찾고 싶습니다

sudo apt-get build-dep <package>

설치합니다 (이미 종속성이 이미 설치되어있는 경우 → 위의 실행 또는 시뮬레이션으로 충분하지 않음을 확인하고 싶습니다). 명령 줄이 선호됩니다.


1
혼란 스럽습니다. sudo apt-get build-dep <package>패키지 목록이 표시 되지 않습니다 (패키지에 빌드 종속성이있는 경우) 설치할 예정입니까?
이사야

1
불행히도 설치되지 않은 패키지 만 표시합니다.
htorque

답변:


45

A에 대한 전체 목록 종속성 '의존성을 포함하여 종속성, 당신은 사용할 수 있습니다 :

apt-rdepends --build-depends openoffice.org

명령을 apt-rdepends먼저 설치하라는 메시지가 표시 될 수 있습니다 .

다음 명령을 사용하여 설치되지 않은 명령 만 표시 할 수 있습니다.

apt-rdepends --build-depends --print-state openoffice.org | grep NotInstalled

apt-rdepends --help모든 옵션을 참조하십시오 .

참고 : 이렇게하면 대규모 목록 이 생성 됩니다.
apt-rdepends -b xterm예를 들어 8773 라인의 출력을 생성하고 시간이 걸립니다.

최상위 패키지를 빌드하는 데 필요한 패키지, 즉 노틸러스를 빌드하기 위해 설치해야하는 패키지 만 보려면 다음을 실행하십시오.

apt-rdepends --build-depends --follow=DEPENDS nautilus

이것은 Carsten Thiel의 답변 ( The following NEW packages will be installed) 과 거의 동일 하지만 출력 형식이 조금 더 좋습니다. 또한 최상위 패키지 만 표시하고 시뮬레이션 apt-get은 종속 패키지로 설치된 패키지도 표시합니다.

설치된 패키지도 표시됩니다. 그러나 기본적으로 설치된 패키지가 표시 될 수도 있습니다. 불행하게도 apt-get build-dep를 실행 한 후 시스템 을 정리 하려고 할 때 어느 방법도 도움이되지 않습니다 . 내가 아는 한, apt 로그 파일을 보는 것 외에는 설치된 것을 찾는 신뢰할 수있는 방법이 없습니다 /var/log/apt/history.log.


1
고마워, 버전 --follow=DEPENDS은 내가 찾던 것입니다. 또한 런치 패드에서 이러한 빌드 종속성을 찾을 수도 있습니다. 노틸러스의 경우 : launchpad.net/ubuntu/natty/+source/nautilus (스크롤 다운).
htorque

18

옵션 -s( --simulate)은 아무 것도하지 않고 수행 될 모든 것을 출력합니다. 당신은 그것에 대한 루트 권한이 필요하지 않습니다.

apt-get -s build-dep <package>

5
위의 내 의견을 참조하십시오-이미 설치된 패키지는 표시되지 않습니다. 내 질문에 정확하지 않아서 죄송합니다.
htorque

작동하지 않습니다 - 실패E: Unable to find a source package for inkscape
아나톨리 techtonik

16
apt-cache showsrc <pkgname> | grep ^Build-Depends

showsrc주어진 소스 패키지에 대한 데비안 / 제어 파일을 표시합니다. 그런 다음 소스에서 빌드하는 데 필요한 패키지 목록이있는 'Build-Depends'로 시작하는 줄을 grep합니다.


무엇을 apt-cache showsrc하고 무엇을하는지 설명하면 +1합니다 | grep. 여전히 좋은 대답입니다. 시간을내어 제공해 주셔서 감사합니다.
MadMike

sudo apt-cache showsrc inkscape작동하지 않습니다 inkscape우분투 18.10에은 - 제공W: Unable to locate package inkscape N: No packages found
아나톨리 techtonik
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.