CentOS软件管理 - 编译安装

网友投稿 801 2022-05-30

写在前面:博主是一只经过实战开发历练后投身培训事业的“小山猪”,昵称取自动画片《狮子王》中的“彭彭”,总是以乐观、积极的心态对待周边的事物。本人的技术路线从Java全栈工程师一路奔向大数据开发、数据挖掘领域,如今终有小成,愿将昔日所获与大家交流一二,希望对学习路上的你有所助益。同时,博主也想通过此次尝试打造一个完善的技术图书馆,任何与文章技术点有关的异常、错误、注意事项均会在末尾列出,欢迎大家通过各种方式提供素材。

对于文章中出现的任何错误请大家批评指出,一定及时修改。

有任何想要讨论和学习的问题可联系我:zhuyc@vip.163.com。

发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。

CentOS软件管理 - 编译安装

本文关键字:Linux、软件管理、configure、make、make install

文章目录

CentOS软件管理 - 编译安装

一、环境准备

1. 核心组件

2. 其他组件

二、安装流程

1. 解压:tar -zvxf

CentOS软件管理 - 编译安装

2. 配置:configure

3. 编译:make

4. 编译检查:make test/check

5. 编译安装:make install

一、环境准备

很多软件下载之后是一个源码包,是不能够直接运行的,需要先进行编译安装,生成可执行程序。在进行编译时,需要先使用yum安装编译工具。

1. 核心组件

必须要安装的就是gcc(GNU Compiler Collection)GNU编译器套件,其中包含了C、C++、Objective-C、Fortran、Java、Ada、Go语言前端,也包含了对应语言的库,几乎可以满足绝大部分源码软件对编译环境的需要。

yum install gcc

1

安装后可解决以下问题:

如果yum使用出现问题,可进传送门:Linux软件管理 - YUM工具

2. 其他组件

在进行实际软件安装时,由于软件与软件之间可能也会存在依赖和调用关系,如:在源码编写时引入了某个类库,如果我们的系统中没有相关的类库,就会编译失败,这个时候我们只要根据报错信息安装相应的缺失类库即可,以下列出了一些常用的类库。

pcre

./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre= option.

1

2

3

4

yum install pcre-devel

1

zlib

./configure: error: the HTTP gzip module requires the zlib library. You can either disable the module by using --without-http_gzip_module option, or install the zlib library into the system, or build the zlib library statically from the source with nginx by using --with-zlib= option.

1

2

3

4

yum install zlib-devel

1

curl

src/main.c:18:23: 错误:curl/curl.h:没有那个文件或目录 src/main.c: 在函数‘main’中: src/main.c:143: 警告:隐式声明函数‘curl_global_init’ src/main.c:143: 错误:‘CURL_GLOBAL_ALL’未声明(在此函数内第一次使用) src/main.c:143: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其 src/main.c:143: 错误:所在的函数内也只报告一次。) src/main.c:397: 警告:隐式声明函数‘curl_global_cleanup’ make: *** [src/main.o] 错误 1

1

2

3

4

5

6

7

8

yum install curl-devel

1

openssl

yum install openssl openssl-devel

1

二、安装流程

1. 解压:tar -zvxf

编译安装的第一步与解压安装类似,需要先进行解压缩,一般都会包含以下目录和内容。

src目录:软件源码存放位置

LICENSE:许可及权限信息

README:帮助说明文档

configure:用于检测当前系统环境,用户自定义配置,以及生成makefile文件

Makefile:有可能直接存在,大多数情况下在执行configure后出现,用来指定编译的顺序及其他的复杂的功能操作

2. 配置:configure

编译安装的第一步就是执行configure脚本,会检查编译构建当前软件的所需环境,同时用户可以根据需要指定相关的配置。所有的选项以-‌-开头使用等号连接配置项与配置的值,如:-‌-prefix=/usr/local/。

-‌-prefix:指定编译安装时的目标路径,相当于自定义软件安装位置

-‌-bindir:指定二进制文件的安装位置

-‌-sbindir:指定超级二进制文件的安装位置

-‌-datadir:指定数据文件的安装位置

-‌-include:指定头文件的安装位置

-‌-infodir:指定info文档格式文件的安装位置

-‌-mandir:指定帮助文档的安装位置

在不指定安装位置时,将会安装到默认位置,通常分布在/usr/local中

3. 编译:make

在进行configure后,如果环境不存在问题,会生成对应的Makefile文件,用于执行make命令时调用。

在make过后,其实软件已经完成了安装,会在源码解压目录中生成构建完成的文件,如:Nginx软件make后会在obj文件夹中生成如下文件:

4. 编译检查:make test/check

编译后可以使用make test或make check命令再次检查编译过程是否正确。

5. 编译安装:make install

执行最后一步:编译安装,根据configure阶段的配置,将已经生成的软件安装到指定的目录中去,可以对可执行文件定义软连接或者添加到环境变量,方便使用。

CentOS

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:从前端路由到 vue-router
下一篇:张小白教你在WSL环境源码安装mindspore 1.5.1 GPU版本
相关文章