python - 在 debian 上打包使用 perl 和 python 的应用程序

标签 python perl debian packaging debhelper

我有一个应用程序,它有多个部分,其中一些是用 perl 编写的,一些是用 python 编写的。打包此类应用程序的最佳工具是什么。

我现在正在研究 deb-helper,并且仍在学习如何使用它,尽管我找不到类似这样的操作方法。有想法吗?

更新

我的源布局:

AppRoot/
    agi-bin/
        MyApp/
        Common/
    web/
    conf/

agi-bin - perl 脚本; web - python 脚本。 我希望安装目的地能够维护 /usr/lib/ 中的 perl/python 脚本的层次结构,并将 conf 移动到 /etc/myapp/

更新2:

如果使用已编译的应用程序(例如 C++),则使用 makefile 的 dh_make 即可完成这项工作。如果我使用 perl,则有 dh-make-perl。然后Thomas(在评论部分)提供的用于打包python的链接将distutils添加到图片中。所有这些都展示了打包不同应用程序的不同方法。

我正在寻找有关打包使用多种语言(即 python 和 perl)的应用程序的最佳方式的想法/建议。我应该为两者使用 makefile 文件,还是只覆盖规则文件中的 dh_install 并移动文件就可以了?您认为这样做的“正确方法”是什么?

此外,我刚刚了解整个包装业务,因此欢迎所有建议。

最佳答案

使用 debhelper 是正确的方法 - 您当然应该创建一个 .deb 包。我建议从 this tutorial 开始.

编辑:如果您尝试安装的脚本实际上是“可执行文件”(从某种意义上说,它们应该作为程序调用,而不是充当各自语言中的库),那么你应该忽略dh-make-perldistutilsdh_pycentral等。这些都是为了安装库/包/模块而设计的,处理包含依赖项、字节码生成等。而是配置 debian/foo.install 文件以列出您要安装的所有脚本,然后让 dh_install 部署它们。确保手动将依赖项(添加到 debian/control 中)添加到脚本可能需要的库,特别是它们需要的 Python/Perl 版本。如果这实际上只是在打包时和安装时复制文件,那么任何额外的 debhelper 功能都不会产生任何好处。当您发现自己正在编写安装后脚本时,请返回并查看 debhelper 是否可以为您生成它们。

关于python - 在 debian 上打包使用 perl 和 python 的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4710798/

相关文章:

perl - 源过滤器到底是什么?

SSH 直接进入 docker 容器

linux - debian 控制文件依赖性问题

linux - Qt 警告:QObject::connect:没有这样的信号 QApplication::screenRemoved(QScreen *)

java - 如何在 Java 或 Python 中修改 .docx 模板

python - 按地址获取 'erc-20' 交易的列表

Perl - 使用 Image::Magick

perl - 设置 Perl 导出常量

python - 将相对图像路径绑定(bind)到 *.py 文件

python - 如何在 Python 正则表达式中匹配(但不捕获)?