代码之家  ›  专栏  ›  技术社区  ›  daotoad

将CPAN模块转换为Debian包的最佳方法是什么?

  •  12
  • daotoad  · 技术社区  · 16 年前

    每当我在一个具有特定处理包管理方式的任何风格的系统上工作时,我都会尝试遵循管理我的Perl模块的标准。”在罗马等地。”

    例如,在使用activeperl的win32系统上,我将PPM用于所有内容,并使用great PPM::Make . 在Redhat系统上,我更喜欢使用RPMS。

    现在,我正在开发一个Debian系统,我发现自己需要一种方法来将任意的CPAN或CPAN样式的分布转换为DEB。

    Google显示了诸如dh make perl、cpanplus::dist::deb和cpan::packager::builder::deb等选项。

    对这些不同的工具有经验的人是否对使用或避免什么有任何建议?

    处理从标准CPAN模块生成DEB文件的最佳方法是什么?

    更新:

    我发现 an article by Hans Dieter Piercy 关于这个问题,他建议,为了他自己的需要,使用cpanplus工具。在某些情况下,他建议dh make perl。Jeremiah Foster(撰写了Brian D Foy指出的文章)对HDP做出了回应,并为dh make perl做了一个案例。

    还有 a post on idimmu.net 它描述了使用dh make perl。

    atm,我倾向于dh make perl,因为这已经被推荐了三次(brian d foy作为jeremy foster,idimmu.net作者和hillu的代理),而cpanplus只有一次。

    5 回复  |  直到 13 年前
        1
  •  12
  •   hillu    16 年前

    dh-make-perl 很好地处理了重复和沉重的举重和猜测信息来源。它几乎适用于我打包成Debian包的所有CPAN模块(官方或内部使用)。

    也就是说,结果包只应被视为正确Debian包的起点。 DH制造Perl 将警告注释放入自动生成的 debian/control (即包和依赖项的描述)和 debian/copyright (许可信息)。

    作为对曼尼的回应,我认为这是 伟大的 工作理念 具有 操作系统或发行版为包管理提供的工具,而不是针对它们的工具。在Debian的例子中,这意味着把东西放进 .deb 包装和安装。Perl的构建工具和CPAN在提供跨平台的构建环境和分发源代码方面做得很好,但是与现代Linux发行版中的包管理工具相比,它们的性能不是很理想,这仅仅是因为通常需要额外的手动干预,而在多台机器上实现自动化比卷起一个包裹。

    (对于一次性安装和测试安装,安装到 /usr/local/ 并使用 stow(8) 作为一个穷人的包裹经理可能会没事的。)

    即使您只是为自己的使用构建包,也可以考虑联系DebianPerl组,如果您觉得有问题的模块可供其他人使用,可以请某人向Debian发起上载。

        2
  •  3
  •   Dirk is no longer here    16 年前

    我建议你去问DebianPerl维护人员组,而不是在这里。只需将显示为维护者的地址邮寄到任何奇数包上:
    Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>

    回到那天,我在Debian上添加了一些模块,只是“手工完成”。我还是保留了一些。这也不难。但该组织现在维护了更多的软件包,并拥有工具。

        3
  •  3
  •   brian d foy    16 年前

    Jeremiah Foster在2009年春季出版了一篇关于将Perl发行版转换为Debian软件包的文章。 The Perl Review .

        4
  •  2
  •   dwright    16 年前

    这里也有一个非常好的步骤。(也有其他好资源的链接和一些得体的评论。[日期是2005年,但大部分还是相关的,而且许多评论都是最近的])

    http://www.debian-administration.org/articles/78

    下面是DebianPerl策略(在本文中也链接到) http://www.debian.org/doc/packaging-manuals/perl-policy/

        5
  •  1
  •   Community Mohan Dere    9 年前

    你不会喜欢这个的,但我真的认为你应该 做这个。各种PerlDebian包不适用于需要在其计算机上使用特定Perl模块的开发人员。它们的构建是因为其他应用程序需要它们,而用户需要或可能需要这些应用程序。

    请看一下答案 this question 在做一些你不应该做的事情之前。