deb를 빌드할 때 독립 데이터(플러그인 파일 등)를 별도의 .deb로 어떻게 패키지합니까?
답변1
데비안 패키징에서 이 control
파일에는 소스 패키지에서 생성될 바이너리 패키지에 대한 세부 정보가 포함되어 있습니다. 제어 파일에 아키텍처 종속 패키지와 아키텍처 독립 패키지를 지정해야 합니다.
를 사용하면 debhelper
소프트웨어의 빌드 시스템을 debian/tmp에 설치하려고 할 것입니다. 이를 수행하는 방법은 소프트웨어의 빌드 시스템에 따라 다릅니다. 예를 들어 소프트웨어의 빌드 시스템이 사용된 경우 GNU autotools
다음과 같은 간단한 규칙을 사용합니다 debhelper
.
override_dh_auto_configure:
./configure \
--prefix=/tmp
dh_install
여기에서 패키징을 위해 해당 파일을 적절한 디렉터리로 이동 하려고 합니다 . 이렇게 하려면 이라는 이름의 각 바이너리 패키지에 대한 파일을 생성해야 합니다 <package_name>.install
. 이 파일에는 패키지에 포함될 파일 이름이나 패턴이 포함되어 있어야 합니다.
맨페이지의 예는 다음과 같습니다 dh_install
.
EXAMPLE Suppose your package's upstream Makefile installs a binary, a man page, and a library into appropriate subdirectories of debian/tmp. You want to put the library into package libfoo, and the rest into package foo. Your rules file will run "dh_install --sourcedir=debian/tmp". Make debian/foo.install contain: usr/bin usr/share/man/man1 While debian/libfoo.install contains: usr/lib/libfoo*.so.* If you want a libfoo-dev package too, debian/libfoo-dev.install might contain: usr/include usr/lib/libfoo*.so usr/share/man/man3