【发布时间】:2011-10-30 09:32:15
【问题描述】:
是否有任何工具可以为Ubuntu 创建类似于Windows 的安装程序?
【问题讨论】:
标签: ubuntu installation
是否有任何工具可以为Ubuntu 创建类似于Windows 的安装程序?
【问题讨论】:
标签: ubuntu installation
如果您追求 .msi 的等价物,那么 .deb 文件就是您想要的。
如有必要,您可以使用安装时脚本(preinst 或 postinst)使其具有交互性。
.deb 文件
deb 只是一个 zip 存档(名为 xxx.deb),具有特定的结构,包括软件本身和一些元数据。元数据包括“依赖项”之类的东西,因此您无需提供第三方工具(例如 python 库或数据库引擎)。
构建 deb 的方法有很多,构建软件的工具链可能有一个插件(例如,Maven 是一个带有 .deb 插件的 Java 构建工具)
以下是一些起点:
pbuilder是Ubuntu推荐的工具:https://wiki.ubuntu.com/PbuilderHowto
交互式安装程序
如果您正在使用交互式安装程序,您可以使用“debconf”提供一些简单的输入,以便在您的 preinst 或 postinst 脚本中运行。 (例如 mysql-server 使用 debconf)
http://www.fifi.org/doc/debconf-doc/tutorial.html
IzPack
或者,如果您对跨平台 GUI 安装程序感兴趣,并且乐于使用基于 Java 的工具,那么您可能需要查看 IzPack。 IzPack 主要用于打包 Java 应用程序,但也可以用于非 Java 软件。
【讨论】:
Ubuntu Packaging Guide 应该包含您需要的所有信息。基本上你可以只提供二进制文件,如果这就是你的程序需要,但即使那样制作 .deb 也可以处理例如将其复制到用户的正确位置。如果您希望您的包直接从存储库中可用,您必须提出请求。我不确定 Ubuntu 中的指导方针是什么。
【讨论】:
压缩和打包编译的文件我认为没有,拥有一个没有意义。
如果你想打包自己的软件,最好的方法是在其中放入一个 shell 脚本,然后在其中放入编译命令并从用户那里获取输入。将其命名为 install.sh 并将其压缩为“tar.gz”格式。
【讨论】: