因此,最近我一直在尝试找到一种方法来制作 apt 或 .deb 软件包,以便人们在不使用命令行的情况下更轻松地安装和使用软件包,但是,要开始这样做,我需要知道如何做一个包!
问题
- 你如何制作一个包?
- 有没有可以更轻松地制作包的 IDE?
- 我需要学习哪些编程语言才能做到这一点?
- 网上有教程吗?
我找到但没有帮助我的链接
网站
YouTube视频
额外信息
操作系统: Chromebook(我使用的是“Linux(Beta)”,这是一个为 Chromebook 运行 Debian 的虚拟机)
操作系统版本: 86.0.4240.199(官方版本)(64 位)
Linux(测试版)版本: Debian GNU/Linux 10(破坏者)
答案1
你如何制作一个包?
我为你提供了三种解决方案:
dh_make
。这是大多数官方 Debian 档案的整理方式。如果您在遵循官方指南时遇到问题,并不是因为它们写得不好(确实如此),这只是一个复杂的过程,所以我不确定视频教程是否能提供更多帮助。你真的只需要付出努力,如果需要几周时间,也不要沮丧。dh_make
生成一个骨架debian/*
目录。填写您的debian/copyright
、debian/control
、debian/rules
、debian/{post|pre}{inst|rm}
等。然后用于dpkg-buildpackage
制作包裹。如果您对特定错误有疑问,我们可以帮助回答,但我无法在此答案中编写比官方文档更清晰的指南。dpkg-deb
: 这个就容易多了。构建项目后,只需执行make install DESTDIR=/tmp/path
.将DEBIAN
目录放在相同的路径中DEBIAN/control
、任何维护者脚本、版权等。主要区别是您不需要文件,rules
因为包已经构建了。然后跑dpkg-deb -b
。cpack
:如果你已经用作cmake
构建系统,那么你只需要设置一些CPACK_*
变量还有一些CPACK_DEB_*
变量,然后跑完cmake .. && cmake --build .
就跑cpack
。
有没有可以更轻松地制作包的 IDE?
不。您的目标平台(即 Debian)不应该决定您的 IDE。使用最适合您的平台的 IDE。我的大部分打包工作都是在终端完成的。
我需要学习哪些编程语言才能做到这一点?
如果您采用上述解决方案 1,那么您应该知道,make
以便可以编写规则文件。
网上有教程吗?
如果您使用解决方案 1,那么您最好的朋友就是Debian 新维护者指南。您有第 6 章的链接,但我认为第 2-5 章对于解决方案 1 和解决方案 2 都更为基础。
如果您在打包时仍然遇到问题,请提出更具体的问题并说明:
- 你是如何包装的。
- 您正在构建的内容和构建系统(例如 python 库、java-maven、C 库、C++ 应用程序、使用 cmake、autoconf、pybuild 等)
- 您遇到什么问题。
答案2
我认为你在这里无法得到单一答案。您列出的教程很好,包含您需要的一切,我怀疑您是否能找到比这些更好的教程。
我可以在列表中再添加一个:https://wiki.debian.org/Packaging/Intro当我开始打包现有软件时,我发现这是最好的。
我建议从这些教程的打包开始,如果遇到问题就提出具体问题,但很难回答这么广泛的问题。
我需要学习哪些编程语言才能做到这一点?
没有任何。一些 shell 脚本的基本知识总是有好处的,但这不是必需的。您应该熟悉您尝试打包的程序所使用的语言。
有没有可以更轻松地制作包的 IDE?
据我所知,没有一个。您可以使用一些辅助工具:https://wiki.debian.org/AutomaticPackagingTools