我正在寻找一种为 Linux 创建下载和安装式程序的方法。为了清楚我所说的“下载和安装”的意思,我的意思是安装过程是这样进行的:
- 用户从网站下载图形安装程序(不是 deb、rpm 等文件...我说的是实际的 ELF 可执行文件)
- 用户以普通用户(而不是 root)身份运行图形安装程序(最好通过双击它)- 安装程序将程序及其依赖项(包含在安装程序中)放在主目录中的一个不错的位置,并将内容添加到桌面环境菜单中让跑步更轻松
- 用户现在可以从桌面环境菜单运行该程序
- 卸载程序与程序一起安装,可以随时运行
这种下载和安装方式与大多数传统个人计算机用户(与习惯于应用程序商店的移动 PC 用户相反)习惯的方法非常相似,我希望分发我使用这种方法制作的任何程序.另外,我真的很喜欢这种软件分发方法。感觉不错。
对于 Linux 程序,我主要使用 C++ 和 FLTK。
我对可用于复制此体验的所有不同选项感兴趣,因此请随意提及“到达那里”的不同方法
假设已经创建了一个程序,并且需要将其“改装”成这种安装方式
目前在 Linux 上使用的最常见的安装工具是MojoSetup。很多很多游戏都使用它,我也遇到过它也用于通用应用程序。正如其他人所提到的,您需要注意您需要的任何图书馆;许多游戏提供动态链接的二进制文件及其所有依赖项,以及静态链接的二进制文件。
另一种可能更适合未来的方法是使用Flatpak;这将解决您可能遇到的大部分依赖性和运行时问题。
就桌面集成而言,最安全的选择是将格式良好的
.desktop
文件放在适当的位置;大多数用户的环境都会选择这些。其他用户将习惯于在任何他们想要的地方添加启动器;不要试图为他们做这件事......