当您构建 deb 时,如何使其独立的数据(例如插件文件)打包到单独的 .deb 中?
答案1
在 debian 打包中,该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