今天在使用 python 安装 M2Crypto 模块的时候报错:Command "python setup.py egg_info" failed with error code 1 in XXXXX
解决办法:
 1. 检查python 的版本,python3 不支持 M2Crypto 模块(没试过) 我的 python 版本是:python2.7.5。命令:# python -V
             
 2. 检查 pip 和setuptools 的版本 和是否安装 ,为保证好使都检查一下,并升级。
     命令:  # python install --upgrade pip (pip 升级)
                 # python install --upgrade setupTools ( setupTools 升级 )
 3. 下载源码来自编译:下载地址--  https://pypi.python.org/pypi/M2Crypto 
     下载完成后,移植到linux目录下,安装了 wget 的直接使用 wget 来安装。(不出意外的话会报同样的错,所以下载完成后不       安装)
    3.1 解压安装包: # tar -zxvf M2Crypto-0.27.0.tar.gz (压缩包)
    3.2 进入解压完的压缩包:# cd M2Crypto-0.27.0
    3.3 找到一个文件 INSTALL.rst ,查看它会看到 已下的内容 ,安装这个软件必备的条件。 命令 :# cat  INSTALL.rst  
     安装第三方模板库发生错误:Command "python setup.py egg_info" failed with error code 1 in XXXXX
          ## 总结一下: python 版本 2.6及以上、OpenSSL 1.0.1 及以上、 SWIG 2.0.4及以上。
        4. 查看 OpenSSL 版本 (我的没安装)           命令:openssl version -a
            下载OPenSSL包:https://www.openssl.org/source/
            解压OPenSSL : # tar -xzf   cd openssl-1.0.2.tar.gz
            进入目录,安装OpenSSL  : 
              # cd openssl-1.0.2.
              # ./config  --prefix=/usr/local --openssldir=/usr/local/ssl
        5. 在执行这句的时候报错: need perl -5
            安装perl:官网下载新的perl 包:http://www.perl.org/get.html
            解压包:# tar zxvf perl-5.12.2.tar.gz
            进入源码目录:# cd perl-5.12.2
            指定安装目录: # ./Configure -des -Dprefix=/usr/local/perl
            安装
            # make
            # make test
            # make install
            # make clean:清除编译的产生的临时文件

            替换系统原有的:
            mv /usr/bin/perl /usr/bin/perl.bak
            # ln -s /usr/local/perl/bin/perl /usr/bin/perl
            # perl -v

        6.安装报错:gcc相关的错误。具体不太清晰了
            安装gcc 方法类似可以使用yum 安装,或者和上面一样自己下载源码包,编译安装。
           # yum -y install gcc
           # yum install gcc libffi-devel python-devel openssl-devel
           继续安装 perl--> openssl-->uwig-->m2crypto 即可。



总结来说:就是找到安装失败的原因,一步一步的去分析、解决。

            
            

相关文章: