Linux编译安装入门

现在的大多数人都习惯在应用商店一键安装,而且现在的各种软件发行商还维护着大量多版本、多平台的预编译二进制执行文件,很多人对编译安装刚到陌生与恐惧。

本文旨在给大家一个编译安装的基础指导,后续文章将会列出例子。

下面讲解编译安装的基本步骤。

下载安装包

要编译安装,肯定要有编译安装的对象,所以我们先要下载想要编译安装的软件的安装包,一般这种安装包可以在项目的官网或Github Release里找到。

例如对于nginx,前往nginx的下载页,可以查看到各种安装包的下载链接,例如获取当前稳定版的安装包:

1
wget http://nginx.org/download/nginx-1.18.0.tar.gz

安装依赖

进行编译安装的通用依赖一般有gccmake

1
yum -y install gcc make

也需要根据要安装软件的需求来安装某些依赖,例如对于nginx,可能需要安装:

1
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

Configure

将下载的安装包解压后,进入解压出的目录。

此时我们需要做的第一步就是configure。这一步需要运行configure检测程序,它可以找到所需的函式库、编译器等,且会根据用户指定的编译参数、启用特性、安装路径外加makefile模板文件来生成makefile文件。

例如:

1
./configure --prefix=/usr/local/thesoftware

这里用户指定参数prefix描述了安装路径。

make && make install

  • make: 每个源代码都有专用的makefile,在make时依据这个配置文件,调用指定的预处理器做处理、调用指定的编译器做处理、编译文件的顺序等操作等;

  • make install: 其实是一些脚本,实现把构建出的应用程序,分别分配到用户指定的目录中;如创建出的二进制文件放到指定的二进制目录、库文件放到指定的库目录等等,使用install拷贝命令也能实现;

于是只要在configure执行完的目录运行:

1
make && make install

即可。

这样一来,软件就被成功安装在configure步骤中指定的目录了,只需进入该目录即可对软件进行操作。