패키지를 만들 때 dpkg 소스 문제를 해결하는 방법은 무엇입니까?


16

여기 누군가 데비안 / 우분투 패키지를 만든 경험이 있습니까? Ubuntu 12.10 (Quantal)에서 Ubuntu 12.04로 lammps 패키지 ( http://packages.ubuntu.com/quantal/lammps ) 를 백 포트하려고합니다.

비공식적으로 만 필요합니다. IaaS 플랫폼에 배포 할 사용자 지정 가상 머신 이미지를 만들 때 편의상 .deb 패키지 만 있으면됩니다.

https://wiki.ubuntu.com/PackagingGuide 의 Ubuntu Packaging Guide에 따라 debuild 명령을 사용하여 다시 빌드하려고 할 때를 제외하고는 성공적으로 빌드 할 수 있습니다. 보통이 오류가 발생합니다.

 dpkg-source: error: aborting due to unexpected upstream changes, see
 /tmp/lammps_0~20120615.gite442279-1.diff.aie32n dpkg-source: info: you
 can integrate the local changes with dpkg-source --commit
 dpkg-buildpackage: error: dpkg-source --include-binaries -i -b
 lammps-0~20120615.gite442279 gave error exit status 2

src 디렉토리에서 'make clean-all'을 실행해도 여전히 문제가 해결되지 않습니다. 빌드 프로세스 중에 생성 된 모든 파일을 완전히 정리하거나 소스 파일의 차이점을 무시하도록 빌드 해제를 요청하는 방법이 있습니까?

답변:


6

즉, debian/patches/디렉토리 의 패치에 속하지 않거나 series파일이있는 경우 압축을 푼 업스트림 소스에 변경 사항을 적용했음을 의미합니다 . 퀼트가 패치를 적용한 상태에 약간의 불일치가 있습니다.

/ tmp에서 언급 된 파일을 보면 문제의 변경 사항이 표시됩니다.


빠른 답변을 주셔서 감사합니다! / tmp / * diff * 파일의 모든 변경 기록을 취소하지 않고 'make'로 수행 한 변경 사항을 복원하는 빠른 방법이 있습니까?
hanxue December

29

바이너리를 빌드하여 데비안 관료주의를 피하십시오 : dpkg-buildpackage -b


1
데비안에 업로드하려는 경우에는 그렇게 유용하지 않습니다.
예레미야

4
@jeremiah이지만 데비안 패키지를 개인 용도로 조정하는 경우 매우 유용합니다.
Wyatt8740

10

퀼트를 사용하지 않으려면 debian / source / format의 형식을 3.0 (퀼트)에서 3.0 (네이티브)으로 변경하십시오. 이것은 어쨌든 나를 위해 문제를 해결했습니다.


이! 이불은 불가능합니다.
Jay _silly_evarlast_ Wren

1
나는이 의견을 순진하게 따랐다. 결과적으로 빌드가 더 이상 데비안 / 패치의 패치를 사용하지 않게됩니다. 패치를 실제로 적용하기 위해 데비안 / 규칙에 필요한 마술을 추가하는 방법을 설명하여 답변을 확장 할 수 있습니까?
Thomas Vander Stichele


1

퀼트가 작업 복사본에 패치를 적용했다고 잘못 생각했을 때이 문제가 발생했습니다 (.pc 폴더에서 현재 상태를 찾을 수 있음). 이 경우 수정 사항은 퀼트가 모든 패치를 튀어 나오도록하는 것이 었습니다 quilt pop -a -f.


0

데비안 "서류"를 모두 수행했지만 이전 시도에서 남아있는 유물이있는 경우 이런 일이 발생할 수 있습니다. 특히, 자동 생성 된 "config.sub", "config.guess"및 "Makefile"변경.

이것을 debian / source / options에 넣을 수 있습니다.

# Don't store changes on autogenerated files
extend-diff-ignore = "(^|/)(config\.sub|config\.guess|Makefile)$"

참조 : https://raphaelhertzog.com/2011/01/28/3-ways-to-not-clutter-your-debian-source-package-with-autogenerated-files/

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.