sbuild 및 백포팅을 사용하여 빌드

sbuild 및 백포팅을 사용하여 빌드

우리는 Debian Jessie용 패키지를 빌드하기 위해 sbuild를 사용하고 있으며 지금까지는 잘 작동하고 있습니다.

하지만 한 가지 세부 사항만 말씀드리겠습니다. Jessie 백포트 아카이브에서 빌드 종속성 중 하나를 가져오고 싶습니다.

그러나 백포트에서 해당 패키지(및 해당 패키지만)를 추출하도록 chroot를 구성하는 방법을 모르겠습니다.

Debian 시스템에서 적절하고 고정된 환경 설정을 구성하는 방법을 알고 있지만 sources.list및 매뉴얼 페이지에서 리포지토리 추가 및 패키지 고정과 관련된 내용을 찾을 수 없습니다.sbuild(1)sbuild.conf(5)

답변1

IRC의 @bigon 덕분에 방법을 찾았습니다.

sbuild이제 런타임 시 이미 사용 가능한 옵션 외에 다음 옵션을 명령에 전달합니다.

$ sbuild ... --build-dep-resolver=aptitude --extra-repository="deb http://deb.debian.org/debian jessie-backports main" ...

--extra-repositoryJessie 백포트 는 chroot에서 사용할 수 있는 유효한 아카이브로 추가됩니다 .

그러나 불행히도 그것만 으로는 충분하지 않습니다. 왜냐하면 Release백포트에 보관된 파일 "NotAutomatic: yes"에는 .debian/control

--build-dep-resolver=aptitude이것이 작동하는 곳은 다음과 같습니다 . aptitude예를 들어 누락된 종속성을 우연히 발견했지만 apt백포트 아카이브에서 해당 종속성을 찾아 자동으로 거기에서 가져오기로 결정합니다.

이것은 내 취향에 비해 너무 "자동적"이므로 몇 가지 명시적인 수정 사항을 설정하는 방법을 선호하지만 지금까지 이것이 내가 찾은 유일한 방법입니다.

@bigon님 감사합니다!

관련 정보