天天看点

CentOS解决pip 安装M2Crypto失败

<code>pip </code><code>install</code> <code>M2Crypto</code>

报错信息:

<code>swig -python -I</code><code>/usr/local/include/python2</code><code>.7 -I</code><code>/usr/include</code> <code>-includeall -o SWIG</code><code>/_m2crypto_wrap</code><code>.c SWIG</code><code>/_m2crypto</code><code>.i</code>

<code>    </code><code>/usr/include/openssl/opensslconf</code><code>.h:31: Error: CPP </code><code>#error ""This openssl-devel package does not work your architecture?"". Use the -cpperraswarn option to continue swig processing.</code>

<code>    </code><code>error: </code><code>command</code> <code>'swig'</code> <code>failed with </code><code>exit</code> <code>status 1</code>

<code>    </code> 

<code>    </code><code>----------------------------------------</code>

<code>    </code><code>Command </code><code>"/usr/local/bin/python -c "</code><code>import</code> <code>setuptools, tokenize;__file__=</code><code>'/tmp/pip-build-_WW9OZ/M2Crypto/setup.py'</code><code>;</code><code>exec</code><code>(compile(getattr(tokenize, </code><code>'open'</code><code>, </code><code>open</code><code>)(__file__).</code><code>read</code><code>().replace(</code><code>'\r\n'</code><code>, </code><code>'\n'</code><code>), __file__, </code><code>'exec'</code><code>))" </code><code>install</code> <code>--r</code>

或者报错:

<code>swigging SWIG</code><code>/_m2crypto</code><code>.i to SWIG</code><code>/_m2crypto_wrap</code><code>.c</code>

<code>swig -python -I</code><code>/usr/include/python2</code><code>.6 -I</code><code>/usr/include</code> <code>-includeall -modern -</code><code>builtin</code> <code>-outdir build</code><code>/lib</code><code>.linux-i686-2.6</code><code>/M2Crypto</code> <code>-D__i386__ -o SWIG</code><code>/_m2crypto_wrap</code><code>.c SWIG</code><code>/_m2crypto</code><code>.i</code>

<code>swig error : Unrecognized option -</code><code>builtin</code>

<code>Use </code><code>'swig -help'</code> <code>for</code> <code>available options.</code>

<code>error: </code><code>command</code> <code>'swig'</code> <code>failed with </code><code>exit</code> <code>status 1</code>

以上都是swig的报错,原因是swig的版本过低导致的。

查看swig版本1.3.已经比较老旧了,swig -python -help 也未找到相关options:

<code>[root@localhost ~]</code><code># rpm -qa | grep swig</code>

<code>swig-1.3.40-6.el6.x86_64</code>

解决办法有两个:

升级swig版本

<code>wget -O swig-3.0.7.</code><code>tar</code><code>.gz http:</code><code>//prdownloads</code><code>.sourceforge.net</code><code>/swig/swig-3</code><code>.0.7.</code><code>tar</code><code>.gz</code>

<code>tar</code> <code>zxf swig-3.0.7.</code><code>tar</code><code>.gz</code>

<code>cd</code> <code>swig-3.0.7</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr</code>

<code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

2.手动安装M2Crypto

<code>[root@localhost ~]</code><code>#wget </code>

<code>[root@localhost ~]</code><code>#unzip master.zip</code>

<code>[root@localhost ~]</code><code>#cd M2Crypto-master</code>

<code>[root@localhost ~]</code><code>#python setup.py install</code>

success!

      本文转自Jx战壕  51CTO博客,原文链接:http://blog.51cto.com/xujpxm/1734786,如需转载请自行联系原作者