我正在创建一个小的deb包来安装一些文件。其中一些将位于/ usr / lib / mypackage /中,我想从/ usr / lib / mypackage / mybin创建一个符号链接到/ usr / bin / mybin
对于/ usr / lib / mypackage文件夹,我正在使用mypackage.install并将文件复制到那里。这似乎工作正常。
但是,为了创建我的符号链接,我知道我需要在那里使用debian规则文件,我不知道如何继续,这里是我需要添加的行,应该添加到哪里以及如何?感谢
ln -s /usr/lib/mypackage/mybin /usr/bin/mybin
答案 0 :(得分:22)
最好的方法是使用dh_link
,这是debhelper套件的一部分。有关其操作的详细信息,请参阅man dh_link
。从中可以看出,您可能希望在名为debian/$mypackage.links
的文件中使用以下内容:
/usr/lib/mypackage/mybin /usr/bin/mybin
您应该在dh_link
中放置debian/rules
,如果它尚未存在,则取决于您制作套餐的方式。如果您正在使用Debhelper,那么您的debian/rules
可能已经dh_link
处理了(虽然如果您使用的是经典的Debhelper,那么dh_link
行可能会被注释掉,而您需要取消注释)。使用较新式的Debhelper(dh
)或CDBS-plus-debhelper(include /usr/share/cdbs/1/rules/debhelper.mk
)也算在这里;他们会为你照顾dh_link
。
但是如果你没有使用Debhelper,并且你不想开始,那么dh_link
可能不是一个选择。在这种情况下,您只需要确保符合Debian Policy on the subject(意味着您的符号链接应该是相对的,而不是绝对的)。您可能希望在debian/rules
的{{1}}目标中建立链接。例如:
build