如何使用 equivs-build 构建可安装在旧版本 Ubuntu 上的软件包?

如何使用 equivs-build 构建可安装在旧版本 Ubuntu 上的软件包?

我安装了多个版本的 Ubuntu,包括 14.04 和 10.04。当我使用equivs-build在 14.04 上,它会生成.deb包含.xz压缩数据的 s。10.04 上的版本dpkg无法理解或安装这些包,因此我看到如下错误:

dpkg-deb:文件“/var/cache/apt/archives/mypackage.deb”包含无法理解的数据成员 data.tar.xz

这个答案给出了一般构建 Debian 软件包的方法,但 equivs-build 似乎并没有提供这种级别的控制;除非我错过了一个明显的选择?

答案1

  • 您可以尝试从设置环境变量debuild

    DEBUILD_DPKG_BUILDPACKAGE_OPTS=Zzgip
    
  • 如果仅构建二进制包(默认),equivs则不使用debuild。使用完整构建,如其手册页所述

    equivs-build -f ..
    

答案2

我也在构建 bebian,并且我发现了如何管理 equivs-contol / -build。

如何包含二进制文件:

  • I st --> 按原样复制工作目录中的所有文件。例如 myPackage-meta。
  • 第二步 --> 打开用 equivs-control 生成的配置文件,修改选项“Files:”,删除哈希,注意缩进

    例子:

Files: binary-qt /usr/local/bin/ second-binary-daemon /usr/local/bin/

在“second-binary-daemon”之前只需要一个空格,并将此缩进用于其它文件。

等等。

  • 第三步——>保存配置文件并执行equivs-build

完毕!

对于配置文件和粗略的说明,您需要了解详细信息,我为您提供手册链接: equivs-build 的语法

希望有用!刹车!

PS:您需要先编译二进制文件。

相关内容