一般来讲,linux系统中安装软件包,分为两种情况,一种是从yum源用dnf -y install pkgname,的方法来安装yum仓库源里面的软件包。另一种是,源码编译安装,我们拷贝或者下载资源到用户家目录下,利用./configure && make && make install的方式安装到默认路径/usr/local/目录下。
相对来说,源码编译安装的好处是,可以安装一些最新的版本,比如nginx的新版本,里面可能更新了新的模块或者新的功能,我们想要去使用,但是发布者可能还没有发布rpm包形式的软件包。这个时候,我们需要下载下来源码包,来进行编译安装。
首先把源码包下载到本地的登录用户的家目录下,比如/tom/home,然后进入家目录,在家目录下用tar -xf 解压包到当前目录。然后cd进入解压后的目录中,接着用./configure && make && make install的方式进行源码编译安装。
在装包之前,要安装好make gcc prce-devel openssl-devel这四个包
编译安装的过程是这样的:
./configure 是源码包里面自带的一个可执行文件,在命令行输入这个可执行文件的名字,敲回车,就可以执行这个文件,这样的目的是,根据当前系统的软硬件环境,产生一个文件,叫makefile
makefile文件的作用是什么?说第二步的时候就知道了
第二步,make(编译、汇编、链接汇编代码,生成二进制文件),这个make命令调用的函数,就是将源码转换成二进制文件的应用程序,而这个转换的过程所遵循的规则和策略,需要makefile来提供。所以,makefile的作用,就是告诉make这个并行处理任务的管理程序,根据什么方式把源代码转换成二进制文件。而make本身,是一个管理编译过程的工具,真实的活不是它干的,而是它指挥gcc这个工具干的,这个gcc很可以,从编译到汇编到链接成二进制文件,全都是它干的,因为它里面集成了需要实现这写功能的函数块等等。
第三步,make install,这个就简单了,就是把gcc做好的二进制文件安装到系统指定的位置。
而源码编译安装,一般来讲,默认的安装位置就在/usr/local目录下。