Tarball管理

news/2024/12/28 21:31:41/

文章目录

  • Tarball管理
    • Tarball安装的基本步骤
    • 一般 Tarball 软件安装的建议事项

Tarball管理

从源代码的说明我们知道制作一个二进制程序需要很多东西,这包括下面这些基础的软件。

  • gcc或cc等C语言编译器
  • make及autoconfig等软件
  • 需要内核提供的Library以及相关的include文件

Tarball安装的基本步骤

以 Tarball 方式发布的软件是源代码的形式,需要经过编译成二进制程序才能运行。所以,我们需要先将 Tarball 文件解压缩,得到源代码文件,然后在源代码所在的目录下建立一个 Makefile 文件,这个文件会告诉计算机如何编译和安装这个软件,最后使用 make 命令进行编译和安装操作,生成可执行的二进制程序。

所以整个安装的基础操作如下:

  1. 获取原始文件:首先需要从网上下载一个.tar.gz 或 .tar.bz2 格式的压缩文件,然后将它解压缩到 /usr/local/src 目录下。

  2. 获取步骤流程:进入解压后的目录,查看里面的一些重要文件,比如 INSTALL 和 README,这些文件会告诉你需要安装哪些依赖的软件。

  3. 依赖属性软件安装:如果有依赖软件需要安装,那么就按照文件里的提示安装好依赖软件

  4. 建立makefile :使用一个名为 configure 或 config 的程序来检测操作环境,并生成一个名为 Makefile 的文件,这个文件会告诉编译器需要进行哪些操作,比如编译、链接等。

  5. 编译:用make这个程序,并使用该目录下的Makefile做为它1的参数配置文件,来进行make(编译或其他)的操作。

  6. 安装:使用 make install 命令来安装程序,这个命令会根据 Makefile 文件里的指令将程序安装到正确的路径。

image-20230529182343787

一般 Tarball 软件安装的建议事项

Linux发行版发布安装的软件大多是在 /usr 里面

而用户自行安装的软件则建议放置在 /usr/local 里面(这考虑到了管理用户所安装软件的便利性)

/usr/local/ 目录下的一些常见文件和文件夹:

  1. /usr/local/bin/:存放本地安装的可执行文件。
  2. /usr/local/include/:存放本地安装的头文件。
  3. /usr/local/lib/:存放本地安装的库文件。
  4. /usr/local/share/:存放本地安装的共享文件,例如文档、图像和音频文件等。
  5. /usr/local/src/:存放本地安装的源代码。
  6. /usr/local/etc/:存放本地安装的配置文件。
  7. /usr/local/man/:存放本地安装的 man 页面。

如果每个软件都选择安装在默认的路径下,也就是 /usr/local/ 目录下,那么所有软件的文件都会被放置在同样的四个目录中,即 /bin、/include、/lib 和 /share 目录中。因此,如果你在这个目录下安装了很多软件,那么在未来想要升级或删除这些软件时,可能会比较难以追查每个文件的来源。而如果你再安装的时候选择的是单独的目录,例如我将apache安装再 /usr/local/apache当中,那么你的文件目录就会变成

  • /usr/local/apache/etc
  • /usr/local/apache/bin
  • /usr/local/apache/lib
  • /usr/local/apache/man

因为单个软件的所有文件都被安装在同一个目录下,所以要删除这个软件就比较容易,只需要将这个目录删除即可。比如,如果要删除 Apache 这个软件,只需要执行命令【rm -rf /usr/local/apache】即可。但是,在实际安装软件的时候,还需要查看该软件的 Makefile 文件中的安装信息,才能了解该软件的具体安装情况。因为有些软件可能会在其他目录下安装一些文件,如果不了解具体情况就直接删除目录,可能会遗漏掉某些文件,导致软件无法正常卸载或者出现问题。


http://www.ppmy.cn/news/103946.html

相关文章

Visual Studio || Visual Studio Code 连接 SQL Server 和 mysql

使用Visua Studio链接本地SQL Server和服务器上的mysql。 软件版本: Visual Studio 2022;Visual Studio Code 2023;SQL Server 2019mysql8.0 一、软件准备二、连接SQL Server2.1 使用Visual Studio 连接SQL Server2.2 使用VS Code连接SQL Ser…

多次调用java.awt.Toolkit.getDefaultToolkit方法获得是同一个单例的Toolkit

多次调用java.awt.Toolkit.getDefaultToolkit方法获得是同一个单例的Toolkit java.awt.Toolkit.getDefaultToolkit()import java.awt.Toolkit;public class 多次调用Toolkit的getDefaultToolkit方法获得是同一个单例的Toolkit {static public void main (String...arguments)t…

Java on Azure 开发工具路线图新发布!

大家好,欢迎来到Java on Azure工具产品的4月更新。让我们首先来谈谈我们对未来几个月的Java on Azure开发工具的投资。在这次更新中,我们还将介绍Azure Service Bus支持和Azure Spring Apps入门模板增强功能。要使用这些新功能,请下载并安装用…

sprintboot logback高级特性使用

一、业务需求 日志级别的分类 日志的级别分为: trace:微量,少许的意思,级别最低info:普通的打印信息debug:需要调试时候的关键信息打印warn:警告,不影响使⽤,但需要注…

HTTP协议基本格式

HTTP即HyperText Transfer Protocol(超文本传输协议),HTTP基于TCP/IP协议传输数据。 目录 Chrome抓包Fiddler代理抓包HTTP协议格式HTTP请求首行URL方法Get方法Post方法Get与Post的区别 请求报头中的属性Cookie和SessionCookie与Session的区别…

C语言深度解析--指针

目录 指针 指针的定义: 指针的大小: 指针和指针类型 野指针 指针运算 指针-整数: 指针-指针: 指针的关系运算: 指针和数组 二级指针 指针数组 理解指针的第一步是在机器级上观察指针表示的内容。大多数现代…

那些你的疑惑

1.当你本地做好域名解析后,服务端配置了基于域名的访问,我们访问的域名会带着吗? 是的,当您在本地对域名进行解析并配置基于域名的访问后,在使用该域名访问服务端时,访问请求会带上该域名。 具体来说&#…

我的第一个128天创作纪念日,幸福的回忆

我的博客 https://blog.csdn.net/yaosichengalpha?typeblog 我的博客 机缘 在学习C的时候想要分享自己的学习成果 记录自己所学习的知识,这样以后还可以回头来复习 通过文章进行技术交流 为了结识更多志同道合的人 收获 获得了多少385粉丝的关注 获得231次点赞…