在Debian上打包使用Perl和Python的应用程序
我有一个应用程序,它的不同部分有些是用perl写的,有些是用python写的。请问,打包这样的应用程序最好的工具是什么?
我现在在看deb-helper,虽然我还在学习怎么使用它,但找不到类似的操作指南。有没有什么想法?
更新
我的源代码结构是:
AppRoot/
agi-bin/
MyApp/
Common/
web/
conf/
agi-bin
- perl脚本;web
- python脚本。我希望安装后能保持perl和python脚本在/usr/lib/
中的层次结构,而conf
文件夹则移动到/etc/myapp/
。
更新 2:
如果是处理编译后的应用程序,比如C++,那么用dh_make
和一个makefile就可以搞定。如果是perl的话,可以用dh-make-perl
。然后,Thomas在评论区提供的关于打包python的链接提到了distutils
。这些都展示了不同的方式来打包不同的应用程序。
我在寻找关于如何打包一个使用多种语言(即python和perl)的应用程序的最佳方法的想法或建议。我应该为两者都使用一个makefile,还是可以只在规则文件中覆盖dh_install
来移动文件?你认为这样做的“正确方式”是什么?
另外,我刚开始学习这个打包的事情,所以所有的建议都非常欢迎。
1 个回答
使用debhelper是个不错的选择,你肯定应该创建一个.deb包。我建议你从这个教程开始。
补充说明:如果你要安装的脚本实际上是“可执行文件”(也就是说,它们是作为程序来运行的,而不是作为各自语言中的库),那么你就可以忽略dh-make-perl
、distutils
、dh_pycentral
等。这些工具都是用来安装库、包或模块的,处理依赖关系、生成字节码等等。相反,你应该配置debian/foo.install
文件,列出你想要安装的所有脚本,然后让dh_install
来部署它们。确保手动在debian/control
中添加脚本可能需要的库的依赖关系,特别是它们所需的Python或Perl版本。如果这只是简单地在打包和安装时复制文件,那么额外的debhelper功能就没什么用处了。当你发现自己在写后安装脚本时,回过头来看看是否有debhelper可以为你生成这些脚本。