linux系统源码安装软件详细介绍

由于Linux操作系统开放源代码,因而在其上安装的软件大部分也都是开源软件,例如Apache、Tomcat、PHP等软件。开源软件基本都提供源码下载、源码安装的方式;源码安装的好处是用户可以自己定制软件功能,安装需要的模块,不需要的功能可以不用安装。此外,用户还可以自己选择安装路径,方便管理,卸载软件也很方便,只须删除对应的安装目录即可。没有Windows所谓的注册表之说。

源码安装软件一般有以下几个步骤组成:

  1. 下载解压源码
  2. 分析安装平台环境(configure)
  3. 编译安装软件(make、make install)

一、下载解压源码
Linux下软件的源码一般都是C或者C++语言编写的,并且都会在软件的官方网站上提供源码包下载。常见的源码打包压缩格式有“.tar.gz”、“.tar.baz2”等。
下面以apache为例进行下载:
用wget工具直接进行下载。

wget https://dlcdn.apache.org//httpd/httpd-2.4.52.tar.gz

源码安装testdisk 源码安装软件_c语言


下载完成,把相应的软件解包即可。针对下载软件包的不同,使用不同的方法进行解压,解压完毕后进入解压生成的目录中。在这个目录下,一般都存在一个REDAME文件。这个文本文件非常重要,它详细介绍了这个软件所能完成的功能、授权许可、安装需求、安装注意事项、安装方式等。由于Linux各个版本的差异,以及安装环境的不同,软件的安装方式也不尽相同,因此在安装软件前,一定要事先阅读这个README文件,确保安装的正确性。

tar zxvf httpd-2.4.52.tar.gz
  1. 解压完成后在当前目录会出现httpd-2.4.52文件夹,直接 cd httpd-2.4.52/进入文件夹;

源码安装testdisk 源码安装软件_源码安装testdisk_02

  1. 认真阅读REDAME文件;
  2. 按照指引查看INSTALL文件;

源码安装testdisk 源码安装软件_运维_03

二、 分析安装平台环境

在软件包解压完毕之后,源码目录中,一般都会存在configure和README这两个文件。README就是上面讲到的,是对软件的介绍和安装说明。Linux下软件的安装受到操作系统安装环境的影响,比如某些软件在安装或者运行过程中需要调用操作系统本身的库文件,或者需要运行系统的某个工具等,但是若系统中不存在这个库文件或者这个工具没有安装,安装或者运行软件就会失败。为了避免这个问题的出现,在安装软件的时候就需要分析操作系统环境,检测当前系统是否拥有安装软件所需的所有文件和工具,如果系统缺少某个文件,就给出提示,直到满足软件的所有需求为止。这个就是configure文件的功能,configure文件一般是个可执行文件,可以在当前目录下直接输入“./configure”进行软件安装的环境测试,如果提示缺少某些安装包,就需要进行安装,直到测试通过。通常,源码安装都需要GCC或者CC编译器,这些编译器一般在安装系统时定制安装包中的开发工具选项下,其实这也是在第2章安装Linux系统时要求选择开发工具包的原因所在。此外,在执行configure分析软件需求时,还可以在“./configure”后面加上软件的安装路路径以及安装所需的模块等选项,来定制用户需要的软件功能。
在本次安装的过程中就要加上

./configure --prefix=/usr/local/httpd \
     --enable-rewrite=shared \
     --enable-speling=shared

在此过程中会提示APR not found 错误,解决办法是

cd /usr/local/src

wget http://archive.apache.org/dist/apr/apr-1.6.3.tar.gz 

wget http://archive.apache.org/dist/apr/apr-util-1.6.1.tar.gz

然后还是解压。

tar zxvf apr-1.6.3.tar.gz

tar zxvf apr-util-1.6.1.tar.gz

最后安装:

cd/usr/local/src/apr-1.6.3 #安装apr

./configure --prefix=/usr/local/apr  

make && make install


cd /usr/local/src/apr-util-1.6.1  #安装apr-util

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr   

make && make install

最后完全通过。
三、编译、安装软件
在验证软件安装环境后,正式进入软件的编译步骤。在进行编译前,首先了解下关于编译的一些基础知识。在Linux系统下,make是经常用到的编译命令。无论是安装软件还是项目开发,都会经常用到编译、安装命令,也就是make和make install。对于一个包含很多源文件的应用程序,使用make和makefile工具可以简单快速地解决各个源文件之间复杂的依赖关系。同时,make工具还可以自动完成所有源码文件的编译工作,并且可以只对上次编译后修改过的文件进行增量编译。因此,熟练掌握了make和makefile工具之后,源码安装软件就变得像Windows下安装软件一样简单。
在Linux系统下,习惯用Makefile替代makefile文件,在执行configure通过后,就会在当前目录下生成这个文件。一般情况下,在命令行输入make时,make命令默认会查找当前目录下的Makefile文件。
接下来,我们只须在命令行输入make命令,即可进入编译阶段,根据软件源程序的大小和系统的硬件配置,编译时间不定,编译完毕,会在当前目录以及子目录下生成相应的可执行文件。之后,就进入最后的安装软件阶段,在命令行输入make install命令,开始安装软件。安装进程会首先创建安装目录,如果没有指定安装的目录,安装程序默认会在系统的/usr/local目录下创建安装目录,然后将相应的文件和可执行程序从源码目录复制到安装目录下,这样安装就完毕了。

执行如下命令

make && make install

安装完成后执行echo $?,如果输出0,则表明安装成功。
注意:由于检查安装环境和编译、安装过程输出过多,这里不做展示。