在没有源代码的linux中分发程序

在没有源代码的linux中分发程序,linux,ubuntu,installation,fedora,opensuse,Linux,Ubuntu,Installation,Fedora,Opensuse,我希望能够在Linux中分发一个程序,而不用分发源代码。当前的解决方案是使用预编译的二进制文件分发tar.gz。在应用程序菜单中放置此二进制文件的最简单方法是什么?有没有一种方法可以做到这一点,这在大多数linux发行版中都很常见,但Ubuntu、Fedora和OpenSUSE将是优先考虑的 最近没有研究过……但回到我使用Linux的那一天(其实也不是很久以前),RPM是分发预编译二进制文件的最简单的方法(大多数分发都有,现在仍然有,对RPM包的某种支持) 这里有一个关于构建RPM包的老方法:

我希望能够在Linux中分发一个程序,而不用分发源代码。当前的解决方案是使用预编译的二进制文件分发tar.gz。在应用程序菜单中放置此二进制文件的最简单方法是什么?有没有一种方法可以做到这一点,这在大多数linux发行版中都很常见,但Ubuntu、Fedora和OpenSUSE将是优先考虑的

最近没有研究过……但回到我使用Linux的那一天(其实也不是很久以前),RPM是分发预编译二进制文件的最简单的方法(大多数分发都有,现在仍然有,对RPM包的某种支持)

这里有一个关于构建RPM包的老方法:


您需要创建.deb和.rpm。前者包括Ubuntu(Debian变体),后者包括Red Hat变体。您还可以为其他用户提供一个独立的可执行文件,这些用户可以自己处理菜单之类的事情


您将不得不处理Gnome和KDE菜单管理,并且不同的发行版也会以不同的方式布置它们的菜单。还有上网本变体的问题,如Moblin,它有一个上网本接口,可能有自己的“添加应用程序”机制。我不知道一个.deb是否可以同时处理Gnome和KDE菜单系统(分别针对Ubuntu和Kubuntu)但是我认为Ubuntu的功能是为了减少重复工作。

试试其他的解决方案。

你可以看看。

做tar.gz,然后给社区重新发布修改过的软件包的权利。他们将为他们喜爱的发行版制作RPM、DEB和任何其他软件包。。。这可能比你做的更适合他们的发行版

发行版之间的差异实在太大,无法制作一刀切的软件包,通常都是很微妙的。例如,一些发行版有“应用程序”部分,其他发行版有“应用程序”。。。这使得一些发行版上的菜单项消失了。库可以不同,默认设置可以不同,等等

RPM和DEB并不像人们所认为的那样便于携带。对于一个软件包,即使单个发行版的不同版本也可能会出现问题,最糟糕的莫过于努力正确安装准备不好的软件包。

所有最新发行版都应该安装
xdg utils
,该发行版提供以下脚本:

  • xdg桌面图标
  • xdg桌面菜单

这似乎就是您所要寻找的。

JeeBee是正确的,您希望使用.deb或.rpm

对于Ubuntu/Debian(the.deb),我想补充一点,你不把它发送给别人,而是创建一个“存储库”,让用户将这个url添加到他们的/etc/apt/sources.list中,然后你就可以很容易地更新软件了

这样可以同时解决分发和更新问题

下面是一个例子,说明了这可能是什么样子:

以及存储库的外观:

但是不要重复Atmels的错误,只做i386,因为现在有很多其他常见的架构,比如amd64


/Johan

对于RPM,IBM提供的这本由三部分组成的教程是我所知道的最好的包装入门指南:




如果可以的话,我会给你+2分,因为我可以直接回答这个问题,而不是像其他人那样偏离包装切线。是的,BitRock InstallBuilder还允许你生成二进制文件以及RPM和DEB包