最近公司一个我的项目的服务器因为平安因素的思考不会提供互联网环境,不能应用yum和wget,所以只能上传离线包装置利用。
应用tar源码包装置利用利用时须要make编译,所以依赖gcc和g++环境,先查看有没有这些:
[root@localhost local]# gcc -vbash: gcc: 未找到命令...^C[root@localhost local]# g++ -vbash: g++: 未找到命令...^C[root@localhost local]# make -vbash: make: 未找到命令...
好吧,啥都没有,rpm应该能用吧
[root@localhost local]# rpmRPM 版本 4.14.3版权所有 (C) 1998-2002 - 红帽公司。
装置gcc-c++
那就用rpm一个一个装吧,先查看一下操作系统类型版本
# 查看零碎版本信息[root@localhost local]# cat /etc/centos-releaseCentOS Linux release 8.3.2011# 查看Linux版本信息 此命令输入后果蕴含了零碎内核版本、gcc编译器版本和Red Hat版本号[root@localhost local]# cat /proc/versionLinux version 4.18.0-240.el8.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Fri Sep 25 19:48:47 UTC 2020
依据下面的版本信息在本人有网的电脑下来 https://pkgs.org/ 下载对应的gcc-c++的rpm包
就是这个,能够看到它依赖了很多包
先不必管这些依赖的包,先把这gcc-c++-8.2.1-3.5.el8.x86_64.rpm这个包下下来传到服务器下来,在这里进行下载:
上传之前先布局好服务器寄存目录:
# 集体喜爱把所有的包放在这个目录下[root@localhost baseenv]# cd /usr/local# 创立一个baseenv目录用于寄存根底环境包[root@localhost local]# mkdir baseenv# 在baseenv下创立gcc-c++目录寄存gcc-c++相干的包[root@localhost local]# cd baseenv/[root@localhost baseenv]# mkdir gcc-c++
上传之后应用rpm进行装置
[root@localhost gcc-c++]# ll总用量 12540-rw-r--r--. 1 root root 12839856 5月 14 05:59 gcc-c++-8.3.1-5.1.el8.x86_64.rpm# 应用rpm进行装置[root@localhost gcc-c++]# rpm -ivh gcc-c++-8.3.1-5.1.el8.x86_64.rpm 正告:gcc-c++-8.3.1-5.1.el8.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID 8483c65d: NOKEY谬误:依赖检测失败: gcc = 8.3.1-5.1.el8 被 gcc-c++-8.3.1-5.1.el8.x86_64 须要 libstdc++-devel = 8.3.1-5.1.el8 被 gcc-c++-8.3.1-5.1.el8.x86_64 须要[root@localhost gcc-c++]#
之前说不必管那些依赖是因为,那些依赖并不是所有的都须要,所以通过尝试去让零碎检测咱们须要那些包,而后咱们依据提醒去找对应的包
点进去用同样的形式进行下载安装,只有所有的依赖都装置好了,父包能力装置胜利,因为有的包依赖的层级比拟深,所以找包的过程比拟麻烦,一共波及到9个包:
[root@localhost gcc-c++]# lscpp-8.3.1-5.1.el8.x86_64.rpm isl-0.16.1-6.el8.x86_64.rpmgcc-8.3.1-5.1.el8.x86_64.rpm kernel-headers-4.18.0-240.22.1.el8_3.x86_64.rpmgcc-c++-8.3.1-5.1.el8.x86_64.rpm libstdc++-devel-8.3.1-5.1.el8.x86_64.rpmglibc-devel-2.28-127.el8.x86_64.rpm libxcrypt-devel-4.1.1-4.el8.x86_64.rpmglibc-headers-2.28-127.el8.x86_64.rpm
能够一个一个去进行rpm装置,也能够找齐所有的包之后一起进行强制装置(gcc-c++相干rpm包已上传至百度网盘-->链接:https://pan.baidu.com/s/1hmXj...
提取码:933g ,版本适合者自取):
# 疏忽依赖强制装置所有rpm包[root@localhost gcc-c++]# rpm -ivh *.rpm --nodeps --force正告:cpp-8.3.1-5.1.el8.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID 8483c65d: NOKEYVerifying... ################################# [100%]筹备中... ################################# [100%]正在降级/装置... 1:libstdc++-devel-8.3.1-5.1.el8 ################################# [ 11%] 2:kernel-headers-4.18.0-240.22.1.el################################# [ 22%] 3:glibc-headers-2.28-127.el8 ################################# [ 33%] 4:libxcrypt-devel-4.1.1-4.el8 ################################# [ 44%] 5:glibc-devel-2.28-127.el8 ################################# [ 56%] 6:isl-0.16.1-6.el8 ################################# [ 67%] 7:cpp-8.3.1-5.1.el8 ################################# [ 78%] 8:gcc-8.3.1-5.1.el8 ################################# [ 89%] 9:gcc-c++-8.3.1-5.1.el8 ################################# [100%]
查看以下是否装置胜利
[root@localhost gcc-c++]# gcc -v[root@localhost gcc-c++]# g++ -v
装置make
仍然在 https://pkgs.org/ 中搜寻make相干包
在baseenv下创立make门路寄存make包,下载好rpm包后进行装置:
[root@localhost make]# ll总用量 500-rw-r--r--. 1 root root 509448 5月 14 06:27 make-4.2.1-10.el8.x86_64.rpm# 装置make[root@localhost make]# rpm -ivh make-4.2.1-10.el8.x86_64.rpm 正告:make-4.2.1-10.el8.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID 8483c65d: NOKEYVerifying... ################################# [100%]筹备中... ################################# [100%]正在降级/装置... 1:make-1:4.2.1-10.el8 ################################# [100%]# 装置胜利后测试以下[root@localhost make]# make -vGNU Make 4.2.1为 x86_64-redhat-linux-gnu 编译Copyright (C) 1988-2016 Free Software Foundation, Inc.许可证:GPLv3+:GNU 通用公共许可证第 3 版或更新版本<http://gnu.org/licenses/gpl.html>。本软件是自由软件:您能够自在批改和从新公布它。在法律容许的范畴内没有其余保障。
装置nginx
环境装置好之后,应用tar包装置个nginx吧,间接将tar包传到/usr/local下,进行解压装置:
# 解压压缩包tar -zxvf nginx-1.20.0.tar.gz# 切换到/usr/local/nginx-1.20.0下编译装置./configure
运行到这一步发现不能通过了
./configure: error: the HTTP rewrite module requires the PCRE library.You can either disable the module by using --without-http_rewrite_moduleoption, or install the PCRE library into the system, or build the PCRE librarystatically from the source with nginx by using --with-pcre=<path> option.
因为nginx自身依赖pcre,和zlib,所以先装置这两个:
装置pcre
- 获取pcre编译安装包,在 http://www.pcre.org/ 上能够获取以后最新的版本
- 解压缩pcre-xx.tar.gz包。
- 进入解压缩目录,执行./configure。
- make & make install
装置zlib
- 获取zlib编译安装包,在 http://www.zlib.net/ 上能够获取以后最新的版本。
- 解压缩openssl-xx.tar.gz包。
- 进入解压缩目录,执行./configure。
- make & make install
装置好之后就能够进行nginx的装置了:
# 切换到/usr/local/nginx-1.20.0下编译装置./configuremakemake install
至此nginx曾经装置胜利了,如果要进行systemd治理或装置其余利用,详情请参考我的另一篇文章 https://segmentfault.com/a/11...
参考文章:
https://www.cnblogs.com/dyd16...
https://blog.csdn.net/huaishu...