2017-12-04 25 views
5

debian/control 파일에 Build-DependsDepends 항목이있는 경우.Debian 패키지의 Build-Depends 및 Depends 설치 방법

두 세트의 종속성을 모두 설치하려면 어떻게해야합니까?

지금은 Build-Depends에 의존하지만 Depends에 의존하지 않는 스텁 패키지를 만드는 데 다음 명령을 사용하고 있습니다.

$ mk-build-deps --build-dep \ 
&& dpkg -i *.deb \ 
|| apt-get update && apt-get install --fix-broken --yes \ 

답변

3

이 당신의 APT 저장소의 표준 패키지는, 당신은 단순히

apt-get build-dep PACKAGE [PACKAGE…] 

는 일반적으로 실행할 수 있어야한다 가정하면, 가장 좋은 방법은 같은 의존성 패키지를 (찾을 수 있습니다 더 나은 아직 동일한 패키지의 동일하지만 다른 버전) 및 단지 build-dep 그것. 이는 내 경험에서 99 % 이상의 문제를 해결합니다.


난 전혀 mk-build-deps 모르지만, 당신은 debian/control 파일에서 호출되는 것을 종속성을 보려면이를 실행할 수 있습니다 : 이것은으로 Build-에 대한 데비안 제어 파일을 검사 (

echo $(sed -re '/^(Build-)?Depends:/,/^[^ ]/!d;//d' \ 
      -e 's/^ //;s/[^a-z0-9-].*$//;/^$/d' PACKAGE/debian/control) 

Depends and Depends 선은 이미 나열된 종속성을 제시하며 (파일에서 다른 히트에 이미 포함되어 있다고 생각되는 변수는 제외) 많은 삭제가 포함됩니다 (//d은 이전 쿼리의 끝에 대한 일치 기준을 삭제합니다 , /^$/d은 이전 교체로 비워진 행을 삭제합니다 옵션 항목, 변수 및 쉼표를 제거합니다.)

echoapt-get install으로 바꾸십시오.하지만 사용자 정의하고 수동으로 설치하려는 항목을 제거해야 할 수도 있습니다.

그 후에는 dpkg -i *.deb으로 더 쉬워야합니다. 걸려있는 경우 언제든지 apt-get install --fix-broken을 사용해보세요.

+0

나는 'debian/control' 파일에'apt-get build-dep'를 사용할 수 없다고 가정합니까? 패키지가 이미 존재해야합니까? –

+0

'apt-get build-dep PACKAGE'는 로컬이 아닌 저장소에있는 PACKAGE의 최신 (불안정한 버전 포함) 빌드 종속성을 설치합니다. PACKAGE 자체를 설치할 필요가 없습니다. 저장소에서 비슷한 패키지를 찾을 수 없기 때문에'debian/control' 파일을 분석해야한다면, 내 대답의 후반 부분을 사용하십시오. –