나는 첫 번째 데비안 프로젝트를 패키징하고 있으며 문제를 100% 해결했습니다 gnu-make
(나에게는 여기서는 무엇이든 가능하므로 지금 내 어려움은 전적으로 탐색 dpkg
/ debuild
시스템에 있습니다).
이제 다음과 같은 규칙 파일과 호환성을 갖춘 더미 컴파일이 생겼습니다.
// debian/compat
10
// debian/rules
#!/usr/bin/make -f
%:
dh $@
override_dh_auto_install:
cat binaries.txt | xargs -I arg install -D -m 0755 arg $$(pwd)/debian/package/opt/package/arg
모든 컴파일 및 소스 파일이 포함 debian
디렉토리에서 make를 통해 관리된다고 가정하면 예상대로 작동하는 최소한의 경우가 있습니다.
// binaries.txt
foo
bar
간단한 make 프로세스에 의해 생성된 더미 바이너리를 나열하는 바이너리 파일입니다.
여기 문서에 따라 deb_helper
내 바이너리를 심볼릭 링크하기 위한 심볼릭 링크를 작성하려고 합니다./opt/package
/usr/local/bin
https://manpages.debian.org/stretch/dpkg/dpkg-maintscript-helper.1.en.html
그러나 나는 운이 별로 좋지 않았다. 이에 대한 절차는 무엇입니까?
답변1
패키지에 심볼릭 링크를 보내려면 다음을 사용하는 것이 좋습니다.dh_link
. 가장 쉬운 방법은 원하는 심볼릭 링크를 나열하는 것입니다 debian/links
(또는 debian/package.links
소스 패키지가 여러 바이너리 패키지를 빌드하는 경우).
opt/package/bin/foo usr/bin/foo
opt/package/bin/bar usr/bin/bar
데비안 패키지는 그 아래에 어떤 파일도 제공하지 않으므로 /usr/local
빌드 도구는 이를 잘 지원하지 않습니다.
에서 다른 것이 필요하지 않은 경우 /opt/package
바이너리를 /usr/bin
.
당신은 또한 사용할 수 있습니다dh_install
설치를 단순화하려면 설치할 바이너리를 나열하십시오 debian/install
.
foo opt/package/bin
bar opt/package/bin
또는
foo usr/bin
bar usr/bin
dh_auto_install
그런 다음 오버레이를 제거할 수 있습니다 .