我想创建一个 PPA 来托管附加版本,因为 Ubuntu 和 Debian 仅为常见架构提供它们(例如,binutils-cross
没有针对 Trusty 或 Wheezy 的官方版本)。ia64-cross
唯一需要的更改是将文件内容设置debian/target
为目标体系结构(例如ia64-linux-gnu
)。
设置启动板帐户并签署行为准则后,我需要采取哪些步骤来发布此内容?
我在本地构建软件时调用的常规步骤如下:
apt-get source binutils
cd binutils-*
export DEB_TARGET_ARCH=ia64-linux-gnu
echo ia64-linux-gnu > debian/target
dpkg-buildpackage -us -uc
我对 PPA 和 Launchpad 还很陌生,所以如果这是一个愚蠢的问题,我深表歉意。
编辑
请注意,我不是在问如何mips
在 Launchpad 上构建或任何外部架构二进制文件。以这种方式发出的二进制文件是 i386 或 x86_64 二进制文件,他们自己可以为外国建筑进行组装/拆卸等。
这是为了建立mips
相当于binutils-aarch64-linux-gnu
包裹。
$ dpkg -S $(which mips-linux-gnu-as)
binutils-mips-linux-gnu: /usr/bin/mips-linux-gnu-as
$ file $(which mips-linux-gnu-as)
/usr/bin/mips-linux-gnu-as: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=44e6366aeea6fb2b12b7e39aec2394fef86c642c, stripped
$ uname -a
Linux ubuntu 3.13.0-35-generic #62-Ubuntu SMP Fri Aug 15 01:58:42 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ echo nop | mips-linux-gnu-as -
$ file a.out
a.out: ELF 32-bit MSB relocatable, MIPS, MIPS-I version 1 (SYSV), not stripped
答案1
要执行此类操作,您通常只需以所需的方式在本地修改源包,调整其版本和/或名称,然后将其上传到您的 PPA。您可以通过在 中设置来实现环境变量更改debian/rules
。
文档树位于https://help.launchpad.net/Packaging/PPA回答了该领域的许多常见问题。
不过,我建议研究binutils-*-cross
Ubuntu 中现有的源包(例如binutils-arm64-cross
)作为此方面的模型。它们通过依赖于 进行构建来实现binutils-source
。最快的方法可能是选择其中最新的一个,搜索并替换架构名称,调整更改日志,然后上传。