我对Debian packaging system有疑问,特别是å为debhelper
çš„dh_installinit
,它将æœåŠ¡åˆå§‹åŒ–文件安装到软件包构建目录ä¸ã€‚
我有一个项目å¯ä»¥ä»ŽC ++æºä»£ç ä¸æž„建多个.deb
软件包。一些创建的.deb
软件包具有å•ä¸ª.service
文件,该文件在软件包安装期间å¤åˆ¶åˆ°/lib/systemd/system
。现在,我需è¦å†å°†ä¸€ä¸ª.service
æ–‡ä»¶æ·»åŠ åˆ°ä¸€ä¸ª.deb
软件包ä¸ï¼ˆæˆ‘们将其称为package-11
)。ä¸å¹¸çš„是,事实è¯æ˜Žæˆ‘认为not与easyä¸€æ ·ã€‚
我的问题类似于所æè¿°çš„here,hereå’Œhere,但实际上它ä¸æ˜¯é‡å¤çš„ï¼Œå› ä¸ºåœ¨æˆ‘çš„æƒ…å†µä¸‹å»ºè®®çš„è§£å†³æ–¹æ¡ˆå¾ˆéº»çƒ¦ï¼ˆè¯·ç»§ç»é˜…读以了解我的æ„æ€ã€‚)
这是我项目的debian
ç›®å½•æ ‘ï¼š
debian
├── changelog
├── compat
├── control
├── copyright
├── docs
├── package-01.install
├── package-02.install
├── package-03.default
├── package-03.init
├── package-03.install
├── package-03.service
├── package-04.default
├── package-04.init
├── package-04.install
├── package-04.service
├── package-05.install
├── package-05.postinst
├── package-06.install
├── package-07.dirs
├── package-07.install
├── package-07.postinst
├── package-07.postrm
├── package-08.install
├── package-09.default
├── package-09.init
├── package-09.install
├── package-09.postinst
├── package-09.service
├── package-10.default
├── package-10.init
├── package-10.install
├── package-10.service
├── package-11.package-additional.service -> package-additional.service
├── package-11.default
├── package-11.init
├── package-11.install
├── package-11.postinst
├── package-11.service
├── package-additional.service
├── README
├── rules
├── rules-nosystemd
└── source
├── format
└── package-12.install
package-11.service
å’Œpackage-additional.service
是我需è¦æ”¾å…¥service
ä¸çš„两个package-11_1.0.0_amd64.deb
文件。
请注æ„,我ä¸å¸Œæœ›é‡å‘½åpackage-additional.service
ï¼ˆå› ä¸ºè¯¥è½¯ä»¶åŒ…ä¹Ÿæ˜¯ä¸ºå…¶ä»–å‘行版构建的,而旧版代ç 使用æ¤æ–‡ä»¶åï¼‰ã€‚å› æ¤å®ƒè¢«å‘½å为package-additional.service
,ä¸æ˜¯ package-11.package-additional.service
,如建议的hereä¸€æ ·ï¼Œå®ƒå¿…é¡»ä¿æŒåŽŸæ ·ã€‚
为使事情æ£å¸¸è¿›è¡Œï¼ˆå¦‚here,hereå’Œhereæ‰€è¿°ï¼‰ï¼Œæˆ‘æ·»åŠ äº†ç¬¦å·é“¾æŽ¥package-11.package-additional.service -> package-additional.service
,以便debhelper能够检测到其他{ {1}}文件。
我ä¸æƒ³ç”¨è¿™æ ·çš„虚拟符å·é“¾æŽ¥æ¥å¼„乱我的项目,所以这里出现了我的问题:有没有其他方法å¯ä»¥ä½¿å®ƒåœ¨ä¸åˆ›å»ºç¬¦å·é“¾æŽ¥çš„情况下起作用?
这是我的.service
文件:
debian/rules
#!/usr/bin/make -f
# -*- makefile -*-
.PHONY: override_dh_auto_configure override_dh_strip override_dh_installinit override_dh_systemd_enable override_dh_systemd_start
override_dh_auto_configure:
./configure --with-doc
override_dh_strip:
dh_strip --dbg-package=package-dbg
override_dh_installinit:
dh_installinit --no-start
dh_installinit --no-start -ppackage-11 --name=package-additional
override_dh_systemd_enable:
dh_systemd_enable --no-enable
override_dh_systemd_start:
dh_systemd_start --no-start
%:
dh $@ --with systemd
为所有程åºåŒ…æ£ç¡®åˆ›å»ºäº†ç¨‹åºåŒ…,并且dpkg-buildpackage -uc -us -F
包å«ä¸¤ä¸ªpackage-11_1.0.0_amd64.deb
文件。
.service
Debian打包系统is quite complex beast,感谢您的帮助。