【问题标题】:I want to make an installer for my application我想为我的应用程序制作安装程序
【发布时间】:2015-02-03 08:08:31
【问题描述】:

我完成了我在 Code::Blocks 中使用 GTK 和语言 C 的应用程序的创建,我现在要做的是为 Linux 应用程序制作一个安装程序;这样当我把它交给某人时,他安装了它,它就会在他的电脑上运行。

【问题讨论】:

  • 什么操作系统?
  • 对于Linux来说,如果它可以做Linux和Windows就太好了
  • @lurker 那么有没有办法适用于 Linux,因为我只记得该应用程序与 Windows 不兼容
  • 我将从创建一个rpm 包开始。有很多在线文档描述了这是如何完成的。
  • 该应用程序基于 GTK,所以我如何将它包含在安装程序中,是否真的需要它

标签: c gtk installation


【解决方案1】:

Linux 没有与 Windows 相同的安装程序概念。分发应用程序的方法有三种,有时一次使用不止一种:

  1. 在普通存档中分发程序的源代码并让用户构建它
  2. 在普通存档中分发程序的二进制文件并让用户运行它
  3. 创建一个包含程序二进制文件的并让用户安装它

最后一个选项是特定于发行版的。 rpm,上面提到的用户@lurker,只被一些发行版使用,主要的发行版是 Red Hat/Fedora。还有deb,它适用于 Debian 和 Ubuntu,还有一个适用于 SUSE 和 Arch,可能还有更多。谷歌搜索将向您展示如何制作所有这些,或者在某些情况下,将包的制作集成到您的构建过程中。

带有包管理器的系统还为您提供依赖管理。每个 GTK+ 2 或 GTK+ 3 程序的 rpmdeb 都表示 GTK+ 2 或 GTK+ 3 是一个依赖项。 (GTK+ 2 或 GTK+ 3 的包名是特定于发行版的部分)。一般来说,您不希望将 GTK+ 或其他依赖项与您的程序捆绑在一起(除非这些依赖项是静态链接的;对于 GTK+,这绝对是不是的情况)。即使您决定不使用包并仅在存档文件中提供二进制文件和/或源代码,出于这个原因,您仍然不想实际包含依赖项。

您可能会发现某些商业或非开源 Linux 软件确实带有安装程序。我建议不要在这里随波逐流,但如果您觉得别无选择,那么我无法说出任何程序来让这件事脱离我的脑海。

【讨论】:

  • 如果我可以问,我该怎么做第二个?
  • 您只需分发可执行文件,可选择放入存档(zip、tar 等)。如果您依赖其他文件,这将变得更加棘手......
  • 但问题是当我双击可执行文件时它不起作用以及我所依赖的文件是什么意思你的意思是像 file.txt 和我在应用程序中使用的其他图像
  • 可执行文件需要有执行权限(zip 不会保留,但 tar 会)。是的,我的意思是外部访问的图像文件。
  • 我如何更改可执行文件的权限,因为当我双击它时没有任何反应,就像我没有点击它一样,什么也没有显示
猜你喜欢
  • 2011-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多