问题

问题

因此,最近我一直在尝试找到一种方法来制作 apt 或 .deb 软件包,以便人们在不使用命令行的情况下更轻松地安装和使用软件包,但是,要开始这样做,我需要知道如何做一个包!

问题

  • 你如何制作一个包?
  • 有没有可以更轻松地制作包的 IDE?
  • 我需要学习哪些编程语言才能做到这一点?
  • 网上有教程吗?

我找到但没有帮助我的链接

网站

YouTube视频

额外信息

  • 操作系统: Chromebook(我使用的是“Linux(Beta)”,这是一个为 Chromebook 运行 Debian 的虚拟机)

  • 操作系统版本: 86.0.4240.199(官方版本)(64 位)

  • Linux(测试版)版本: Debian GNU/Linux 10(破坏者)

答案1

你如何制作一个包?

我为你提供了三种解决方案:

  1. dh_make。这是大多数官方 Debian 档案的整理方式。如果您在遵循官方指南时遇到问题,并不是因为它们写得不好(确实如此),这只是一个复杂的过程,所以我不确定视频教程是否能提供更多帮助。你真的只需要付出努力,如果需要几周时间,也不要沮丧。dh_make生成一个骨架debian/*目录。填写您的debian/copyrightdebian/controldebian/rulesdebian/{post|pre}{inst|rm}等。然后用于dpkg-buildpackage制作包裹。如果您对特定错误有疑问,我们可以帮助回答,但我无法在此答案中编写比官方文档更清晰的指南。
  2. dpkg-deb: 这个就容易多了。构建项目后,只需执行make install DESTDIR=/tmp/path.将DEBIAN目录放在相同的路径中DEBIAN/control、任何维护者脚本、版权等。主要区别是您不需要文件,rules因为包已经构建了。然后跑dpkg-deb -b
  3. cpack:如果你已经用作cmake构建系统,那么你只需要设置一些CPACK_*变量还有一些CPACK_DEB_*变量,然后跑完cmake .. && cmake --build .就跑cpack

有没有可以更轻松地制作包的 IDE?

不。您的目标平台(即 Debian)不应该决定您的 IDE。使用最适合您的平台的 IDE。我的大部分打包工作都是在终端完成的。

我需要学习哪些编程语言才能做到这一点?

如果您采用上述解决方案 1,那么您应该知道,make以便可以编写规则文件。

网上有教程吗?

如果您使用解决方案 1,那么您最好的朋友就是Debian 新维护者指南。您有第 6 章的链接,但我认为第 2-5 章对于解决方案 1 和解决方案 2 都更为基础。

如果您在打包时仍然遇到问题,请提出更具体的问题并说明:

  1. 你是如何包装的。
  2. 您正在构建的内容和构建系统(例如 python 库、java-maven、C 库、C++ 应用程序、使用 cmake、autoconf、pybuild 等)
  3. 您遇到什么问题。

答案2

我认为你在这里无法得到单一答案。您列出的教程很好,包含您需要的一切,我怀疑您是否能找到比这些更好的教程。

我可以在列表中再添加一个:https://wiki.debian.org/Packaging/Intro当我开始打包现有软件时,我发现这是最好的。

我建议从这些教程的打包开始,如果遇到问题就提出具体问题,但很难回答这么广泛的问题。

我需要学习哪些编程语言才能做到这一点?

没有任何。一些 shell 脚本的基本知识总是有好处的,但这不是必需的。您应该熟悉您尝试打包的程序所使用的语言。

有没有可以更轻松地制作包的 IDE?

据我所知,没有一个。您可以使用一些辅助工具:https://wiki.debian.org/AutomaticPackagingTools

相关内容