首先,说一下,遇到一个新的问题时,都会觉得很恶心。但是,在解决了之后,又会恍然大悟,觉得学到了。---------真香定理

 

  1. 在使用PostgreSQL数据库时,编译前,都需要执行配置命令,如下:

  ./configure --enable-debug --with-python --with-perl --with-tcl --with-gssapi --with-pam --with-openssl --with-pam --without-ldap --with-libxml --with-libxslt --enable-dtrace --enable-depend --enable-cassert --with-systemd CFLAGS="-O0 -DOPTIMIZER_DEBUG -g3 -gdwarf-2" --prefix=/usr/local/pgsql

  但是在这个过程中报错,提示信息是:perl工具每安装,如下:

  configure: error: libperl library is required for Perl

  2. 那么接下来我就会执行yum,去进行安装。命令如下:

  sudo yum install perl-ExtUtils-Embed -y

  此时,报错:

                Extra Packages for Enterprise Linux Modular 0.0.1 - x86_64 39 kB/s | 1.1 kB 00:00
                为 repo 'epel-modular' 下载元数据失败
                错误:为 repo 'epel-modular' 下载元数据失败

        3. 开始找报错的原因,找的我好辛苦啊,最后灵光一闪,发现了问题的关键。

    (1)找到yum的/etc/yum.repos.d,看到有很多文件

      

      现在报错就是因为“黄框”中这个文件,yum在下载的时候,一直在使用它,它内部的url下载地址用的是阿里云的,但是我们公司对外网做了屏蔽,所以需要

  使用“红框”这个文件中的下载地址。

    (2)解决办法很简单,将epel相关文件全部转移到备份目录下,只剩下“红框”中文件,再使用yum的下面两个命令,清理重建一下yum缓存:

      yum clean all

      yum makecache

    (3)再去下载,发现成功了。

        

  4. 问题原因:

     之前下载别的软件的时候,误把epel这些文件添加到这里导致,挺难发现的,记录一下,避免遗忘,再次入坑。