Linux基本配置和管理 7 ---- 软件安装:源码和Tarball

简介: 一 开放源码的软件安装和升级简介      1 Linux上面的软件几乎都是经过GPL的授权,所以每个软件几乎均提供源代码,并且你可以自行修改程序代码      2 在Linux系统上面,一个文件能不能被执行看的是有没有可执行的那个权限(...


一 开放源码的软件安装和升级简介

     1 Linux上面的软件几乎都是经过GPL的授权,所以每个软件几乎均提供源代码,并且你可以自行修改程序代码

     2 在Linux系统上面,一个文件能不能被执行看的是有没有可执行的那个权限(具有x权限),不过Linux上面真正识别的可执行文件其实是二进制文件,例如/usr/bin/passwd

     3 程序代码文件其实就是一个一般的纯文本文件,在完成这个源码文件的编写之后,再来就是要将这个文件“编译”成为操作系统看的懂的二进制文件,而要编译自然要写“编译程序”来操作,经过编译程序的编译与链接之后,就会生成一个可以执行的二进制程序

     4 总之,我们可以这么说

        开放源码:就是程序代码,写给人类看的程序语言,但机器不认识,所以无法执行

        编译程序:将程序代码转译成为机器看得懂的语言,就类似翻编者的角色

        可执行文件:经过编译程序变成二进制程序之后机器看得懂的所以可以执行的文件 

     5 函数库类似子程序的角色,可以被调用来执行的一段功能函数。分为静态函数库和动态函数库

     6 有的时候有一堆的程序代码文件,我们需要去手动编译,但是很多编译命令让我们写到疯掉,这个时候我们可以利用make这个命令的相关功能来进行编译过程的命令简化

     7 当执行make 的时候,make会在当前的目录下搜索Makefile这个文本文件,而Makefile里面则记录了源码如何编译的详细信息,make会自动判别源码是否经过变动而自动更新执行文件

     8 makefile是怎么产生的呢?一般我们在当前的目前下会有一个configure,这个configure检测程序可以找到所需函数库,编译器及其他资料

     9 所谓的Tarball文件,其实就是将软件的所有源码文件先以tar打包,然后再以压缩技术来压缩,通常最常见的就是gzip来压缩了,因为利用了tar和gzip的功能,所以tarball的文件一般的扩展名为*.tar.gz或者是*.tgz

     10 一个软件的tarball是如何安装的呢,基本流程是这样的

         1 将tarball由厂商的网页下载下来

         2 将tarball解压缩,生成很多的源码文件

         3 开始以gcc进行源码的编译(会生成目标文件)

         4 然后以gcc进行函数库,主程序,子程序的链接,以形成主要的二进制文件

         5 将上面的二进制文件以及相关的文件配置安装到自己的主机上面


二 使用传统程序语言进行编译的简单范例

     1 在默认的情况下,如果我们直接以gcc编译源码,并且没有加上任何参数,则执行文件的文件名会被自动的设置为a.out这个文件名

     2 gcc的简易用法

        1 gcc -c tmp.c  

           -c参数是仅将源码编译成为目标文件,并不制作链接等功能

           会生成tmp.o这个文件,但是并不会生成可执行文件

        2 gcc -o tmp.c -c

           -o参数在编译的时候,依据操作环境给予优化速度

           会自动的生成tmp.o这个文件,并且进行优化

        3 gcc tmp.c -lm

           -lm指的是libm.so或libm.a这个函数库文件

        4 gcc -o main tmp.c -wall

           -o tmp指定生成的可执行文件为main

           -wall 会把详细的信息列出


三 Tarball的管理与建议

     1 Tarball安装的基础操作大多是以下流程:

        1 取得源文件:将tarball文件在/usr/local/src目录下解压缩

        2 取得步骤流程:进行新建立的目录下面,去查阅INSTALL与README等相关文件内容

        3 相关属性软件安装:根据INSTALL/README的内容查看并安装好一些相关的软件

        4 建立makefile:以自动检测程序configure检测操作环境,并建立Makefile这个文件

        5 编译:以make这个程序并使用该目录下的Makefile作为它的参数配置文件,来进行编译的操作

        6 安装:以make这个程序,并以Makefile这个参数配置文件,以及install这个目标的指定来安装到正确的路径

     2 所谓的更新源码只是更新少部分,很多的软件开发商在更新了源码之后,都会发布所谓的patch file

     3 我们只要下载了patch file就能够对你的软件源码更新了,只不过更新了源码并非软件就更新,我们还需要将该软件进行编译後才会是最终的正确的软件,因为patch的功能主要是更新源码而已 

     4 我们可以使用MD5这个指纹验证机制来判断该文件有没有被改动过

  


相关文章
|
12天前
|
问题记录:解决Linux登录故障,/etc/passwd配置受损该怎么操作
修复/etc/passwd文件是解决Linux登录故障的重要步骤。通过进入单用户模式、挂载文件系统、恢复或手动修复/etc/passwd文件,可以有效解决该问题。保持定期备份系统配置文件是预防此类问题的最佳实践。
40 13
|
11天前
|
问题记录:解决Linux登录故障,/etc/passwd配置受损该怎么操作
修复/etc/passwd文件是解决Linux登录故障的重要步骤。通过进入单用户模式、挂载文件系统、恢复或手动修复/etc/passwd文件,可以有效解决该问题。保持定期备份系统配置文件是预防此类问题的最佳实践。
33 2
|
3月前
|
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
286 7
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
如何配置Linux端的ftp?
如何配置Linux端的ftp?
191 64
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
113 9
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
116 5
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
144 2
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
1073 3
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器