Centos中 软件安装三部曲之 (./configure make make install)// perl, m4, autoconf,automake安装实战

在Centos中本来准备搭建protobuf运行环境,发现需要先提前安装automake, autoconf,所以记录下安装过程。
注:在安装过程中发现automake,autoconf存在依赖关系,automake->autoconf->perl & m4,故我的安装顺序: perl->m4->autoconf->automake

一、安装perl(yum -y install perl perl-devel)

1.下载安装包 wget http://search.cpan.org/CPAN/authors/id/S/SH/SHAY/perl-5.26.1.tar.gz  

(☆ 如果wget下载失败,可以尝试直接到官网下载!!!)
2. 解压安装包 tar -zxvf perl-5.26.1.tar.gz
3. 进入安装目录 cd perl-5.26.1
4. 编译并安装 make && make install
5. 验证 perl -v,如下图则安装成功
在这里插入图片描述

二、安装m4

1.下载安装包 wget http://mirrors.kernel.org/gnu/m4/m4-1.4.18.tar.gz
2. 解压安装包 tar -xzvf m4-1.4.18.tar.gz
3. 进入安装目录 cd m4-1.4.18
4. 配置安装目录 ./configure --prefix=/usr/local
5. 编译并安装 make && make install

6. 编译并安装 m4 --version
在这里插入图片描述
在CentOS 8.1中,configure 会报如下图错误
解决方法 yum install gcc,安装gcc即可
在这里插入图片描述
在CentOS 8.1 make的时候会报如下图错误
在这里插入图片描述
解决方法 NUC980开源项目24-Please port gnulib freadahead.c to your platform

sed -i ‘s/IO_ftrylockfile/IO_EOF_SEEN/’ lib/*.c
echo “#define _IO_IN_BACKUP 0x100” >> lib/stdio-impl.h

三、安装autoconf

1.下载安装包 wget http://mirrors.kernel.org/gnu/autoconf/autoconf-2.69.tar.gz
2. 解压安装包 tar -xzvf autoconf-2.69.tar.gz
3. 进入安装目录 cd autoconf-2.69
4. 配置安装目录 ./configure --prefix=/usr/local
5. 编译并安装 make && make install

6. 编译并安装 autoconf --version
在这里插入图片描述
执行step 5,可能会报如下错误:
Can’t locate Data/Dumper.pm in @INC (@INC contains: /usr/local/lib64/perl5……
提示这个是缺失perl 的插件,可以通过yum的方式来安装下插件.yum install 'perl(Data::Dumper)'
在这里插入图片描述

四、安装automake

1.下载安装包 wget http://mirrors.kernel.org/gnu/automake/automake-1.16.tar.gz
2. 解压安装包 tar xzvf automake-1.16.tar.gz
3. 进入安装目录 cd automake-1.16
4. 配置安装目录 ./configure --prefix=/usr/local
5. 编译并安装 make && make install

6. 编译并安装 automake --version
在这里插入图片描述
执行step5,可能会报错:
help2man: can’t get `–help’ info from automake-1.16……
在这里插入图片描述
解决办法:可以通过vi Makefile,在3694行的末尾加上 --no-discard-stderr
在这里插入图片描述
执行step5, 可能会报错
Can’t locate Thread/Queue.pm in @INC (@INC contains: /usr/share/automake-1.15 /usr/local/lib64/perl5 ……
在这里插入图片描述
解决办法缺少perl环境依赖 “perl-Thread-Queue”,下载并安装 yum install perl-Thread-Queue
执行step5,可能会报错
“none” is not exported by the “List::Util module”
Can’t continue after import errors at ./bin/automake line 76
在这里插入图片描述
解决办法:vi /usr/local/bin/automake 第76行,将use List::Util ‘none’; 改为 use List::Util;
在这里插入图片描述

(其他:https://jingyan.baidu.com/article/8275fc8691d01a46a03cf6a5.html?qq-pf-to=pcqq.c2c

五:./configure –prefix=usr 命令

        源码的安装一般由有这三个步骤:配置(configure)、编译(make)、安装(make install)。

        在Linux上编译安装软件时,经常遇到./configure –prefix=usr这个命令。./configure –prefix 是什么意思呢?下面简单介绍一下./configure –prefix 的用法。

        Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。

        其中–prefix选项就是配置安装的路径。如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较分散。

        为了便于集中管理某个软件的各种文件,可以配置–prefix,如:./configure –prefix=/usr/local
可以把所有资源文件放在/usr/local的路径中,就不会分散了。
        用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单地删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。

        当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值