AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 3446
Accepted
maxschlepzig
maxschlepzig
Asked: 2010-09-02 09:10:11 +0800 CST2010-09-02 09:10:11 +0800 CST 2010-09-02 09:10:11 +0800 CST

如何创建和管理多架构 PPA?

  • 772

我有一个需要为每个 ubuntu 版本重新编译的程序。

目前我正在使用 Ubuntu 的 PPA 打包它,只是为了当前的发行版。

最终,我必须为以前的 ubuntu 版本提供包。

我不知道如何做到这一点。

Ubuntu PPA 构建服务器是如何工作的——它是否只查看最新更改日志条目(在 debian/changelog 文件中)中的分布字段来确定应该构建包的发行版?

debian 规范允许将多个分布添加到分布字段中。但这并不能帮助我。

一些 ubuntu 文档讨论了将发行版名称编码为版本号(在 debian 更改日志文件中)。

但这在实践中如何运作?该程序的新版本可用,然后呢?我是否为每个发行版添加了一个新的变更日志条目,并且 PPA 构建服务器在 dput 后​​自动为每个发行版新包构建?还是 PPA 构建服务器只查看第一个变更日志条目?

launchpad ppa packaging
  • 3 3 个回答
  • 2086 Views

3 个回答

  • Voted
  1. Best Answer
    LassePoulsen
    2010-09-02T12:16:05+08:002010-09-02T12:16:05+08:00

    方法是为每个 Ubuntu版本上传一次。

    Launchpad 不会为不再受支持的 Ubuntu 版本构建包,而只会为一个特定版本的 Ubuntu 构建包。目标版本(如您所知)在changelog文件中由最新条目指定!

    请记住,您的程序所依赖的软件包可能不会在所有版本的 Ubuntu 中以相同的版本提供。

    您还谈到了“多架构”(架构 = CUP 类型,例如 x86、LPIA、AMD64),这没有什么区别,因为只要您Architecture: any在包定义 ( debian/control) 文件中,上传的每个包都是为所有可用架构构建的,这也允许您使包依赖于不同架构的不同包(多次定义包)

    • 10
  2. Isaiah
    2010-09-02T12:19:50+08:002010-09-02T12:19:50+08:00

    Launchpad 有一个新功能,目前处于测试阶段,它允许您一次为多个 ubuntu 版本构建您的包,而无需任何额外的工作。你甚至可以每天自动构建你的包。https://help.launchpad.net/Packaging/SourceBuilds/GettingStarted 替代文字

    • 10
  3. Scott Ritchie
    2010-10-01T00:17:26+08:002010-10-01T00:17:26+08:00

    关于命名约定,标准是做这样的事情:

    • 1.0-0ubuntu1 用于最终在 Ubuntu 官方存档中的软件包
    • 1.0-0ubuntu1~lucidppa1 表示您在 PPA 中为 lucid 放入的包的版本
    • 1.0-0ubuntu1~karmicppa1 用于 Karmic 包的版本

    原因是版本字段中的 ~ 表示版本号的“小于无”。因此,如果有人在 Karmic 添加您的 PPA,他们将获得 ~karmicppa1 包。当他们随后升级到 Lucid(并读取您的 PPA)时,它将被 Lucid PPA 包替换。如果您的包随后进入官方存档,则从您的 PPA 的过渡将顺利进行。

    另一个优点是,将版本放在版本字段中可以清楚地表明文件适用于哪个版本(并巧妙地提醒您每个版本上传一个)。例如,当您有不同的依赖项时,您可能还需要为每个 Ubuntu 版本使用不同的分支。

    • 6

相关问题

  • 我如何创建自己的 php 5.3.3 包/ppa?

  • 如何删除 PPA?

  • 当上游维护者似乎不活跃时,如何将补丁应用于包?

  • 如何最好地重新测试较新或开发版本中的错误?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何安装 .run 文件?

    • 7 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    如何获得 CPU 温度?

    • 21 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Marko Smith

    你如何重新启动Apache?

    • 13 个回答
  • Marko Smith

    如何卸载软件?

    • 11 个回答
  • Marko Smith

    如何删除 PPA?

    • 26 个回答
  • Martin Hope
    NES 如何启用或禁用服务? 2010-12-30 13:03:32 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    Olivier Lalonde 如何在结束 ssh 会话后保持进程运行? 2010-10-22 04:09:13 +0800 CST
  • Martin Hope
    David B 如何使用命令行将用户添加为新的 sudoer? 2010-10-16 04:02:45 +0800 CST
  • Martin Hope
    Hans 如何删除旧内核版本以清理启动菜单? 2010-08-21 19:37:01 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve