程序安装包的命名约定?

程序安装包的命名约定?

程序安装包的命名有什么约定吗?这可以帮助决定在计算机系统上下载并安装哪个软件包。

例如,ROMhttp://www.gtlib.gatech.edu/pub/apache/hadoop/common/hadoop-2.4.1/

[   ] hadoop-2.4.1-src.tar.gz     03-Nov-2014 11:54   15M  
[   ] hadoop-2.4.1.tar.gz         03-Nov-2014 11:54  132M   

hadoop-2.4.1-src.tar.gz似乎表明它是通过编译源代码安装的。

那么到底是哪一种安装方式呢hadoop-2.4.1.tar.gz?它大得多,我想知道它是否是跨平台的二进制安装?

我可以在 Ubuntu 12.04 上安装它吗?

答案1

在我的一般使用中我发现:

  • Linux 源文件(很少可运行的程序)是除 zip 之外的任何压缩形式,特别是如果它们是 gz 或 tar 或两者的任意组合。
  • Linux 软件包通常是 deb 或 rpm 扩展名
  • Windows 应用程序通常采用 zip、exe 或 msi 形式

为了回答您的特定问题,这看起来像一个 Linux 源包,只要您安装了适当的构建库,就应该在 12.04 上构建后安装。

答案2

Ubuntu 本机安装包将以“.deb”结尾。其他软件包被视为外星人,最好使用 Alien 软件包安装程序进行安装(https://help.ubuntu.com/community/RPM/AlienHowto)。

某些程序的打包方式可能无法通过 Alien 检查,只需解压它们并从解压的目录中运行它们即可安装。 eclipse.org 站点上的 Eclipse 就是其中之一。

为了更直接地介绍你提到的两个,虽然我不知道具体的软件包,但看名称,似乎其中一个是源代码(hadoop-2.4.1-源代码其中一个是 .tar.gz,另一个是 hadoop-2.4.1.tar.gz 是该包的二进制分发版。

如果您下载源代码,则必须实际编译源代码。然后在编译和配置它之后,使用包含在运行它的包中的说明。编译程序的说明通常包含在软件包中。对于新手用户来说,从源代码编译可能是一个挑战。

正如我提到的,二进制版本就像将文件复制到您想要的位置并从那里运行它一样简单。它还很可能有一个“Readme.txt”文件或“install.txt”文件,其中包含如何安装该软件包的说明。

顺便说一句,源代码附带的许多软件包都包含一个configure程序,可以使用该目录中的命令运行该程序./configure,该程序将检查您是否具有编译它所需的依赖项,然后准备系统进行安装。如果configure命令成功,您通常可以通过使用 make 命令编译来安装它make,并使用命令安装编译后的程序make install

如果可以使用该Alien实用程序安装该软件包,您将可以将其列在已安装的软件包数据库中,并且可以轻松方便地使用标准 Ubuntu 卸载程序来干净地删除它。

相关内容