我有以下debian结构:
使用dpkg-deb --build构建软件包并使用dpkg -i安装后,如果它们不存在,它似乎不会自动创建文件夹测试。我是否需要在preinst脚本中手动创建它们?
更新:问题是因为preinst有错误所以拆包没有机会发生。
劳伦
答案 0 :(得分:3)
查看我的示例 here 。
debian/DEBIAN
debian/usr/bin
debian/usr/lib
您有几个选择:
在第一种情况下,您不需要通过preinst
脚本创建目录:安装软件包时,包管理器将根据需要创建文件夹层次结构。
在第二种情况下,您需要使用mkdir -p
在install
阶段创建文件夹层次结构。
去年我在Debian存储库中经历了3种不同的打包方式,相信我,需要考虑的细节很多。一个令人欣慰的是熟悉Launchpad及其PPA发布过程。
答案 1 :(得分:0)
您需要名为tmp
的软件包或与debian / control中列出的第一个软件包相同的软件包,具体取决于您选择的debhelper compat模式的版本。
E.g。来自其中一个debhelper
示例文件的调用:
$(MAKE) prefix=`pwd`/debian/`dh_listpackages`/usr install
你在这里缺少一个间接层。