pip 安装 M2Crypto 失败
pip install M2Crypto failing
在 Fedora 21 上安装 M2Crypto 时出现以下错误:
Installed /home/subho/.virtualenvs/shumgrepper/lib/python2.7/site-packages/shumgrepper-0.0.1-py2.7.egg
Processing dependencies for shumgrepper==0.0.1
Searching for M2Crypto
Reading https://pypi.python.org/simple/M2Crypto/
Best match: M2Crypto 0.22.3
Downloading https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz#md5=573f21aaac7d5c9549798e72ffcefedd
Processing M2Crypto-0.22.3.tar.gz
Writing /tmp/easy_install-q3YUXp/M2Crypto-0.22.3/setup.cfg
Running M2Crypto-0.22.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-q3YUXp/M2Crypto-0.22.3/egg-dist-tmp-nxDfs1
SWIG/_ssl.i:676: Error: Syntax error in input(1).
error: Setup script exited with error: command 'swig' failed with exit status 1
尝试按照 here,here 中的步骤操作。但是最新版本的 pip 清除了未完成的构建。我也尝试从 pypi 下载 M2Crypto 提取它但找不到任何 fedora_setup.sh
文件。
此外,深入研究 M2Crypto 中的 setup.py,我发现以下几行。所以看起来他们已经处理了 fedora OS 所以显然没有单独的 fedora_setup.sh 文件在那里。
# Fedora does hat tricks.
if platform.linux_distribution()[0] in ['Fedora', 'CentOS']:
if platform.architecture()[0] == '64bit':
self.swig_opts.append('-D__x86_64__')
elif platform.architecture()[0] == '32bit':
self.swig_opts.append('-D__i386__')
self.include_dirs += [os.path.join(self.openssl, opensslIncludeDir),
os.path.join(os.getcwd(), 'SWIG')]
任何帮助都会很棒。
这是 swig 版本问题。最新版本的 swig 给出了语法错误。我切换到旧版本 (SWIG Version 3.0.2)
来解决这个问题。
在 Fedora 21 上安装 M2Crypto 时出现以下错误:
Installed /home/subho/.virtualenvs/shumgrepper/lib/python2.7/site-packages/shumgrepper-0.0.1-py2.7.egg
Processing dependencies for shumgrepper==0.0.1
Searching for M2Crypto
Reading https://pypi.python.org/simple/M2Crypto/
Best match: M2Crypto 0.22.3
Downloading https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz#md5=573f21aaac7d5c9549798e72ffcefedd
Processing M2Crypto-0.22.3.tar.gz
Writing /tmp/easy_install-q3YUXp/M2Crypto-0.22.3/setup.cfg
Running M2Crypto-0.22.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-q3YUXp/M2Crypto-0.22.3/egg-dist-tmp-nxDfs1
SWIG/_ssl.i:676: Error: Syntax error in input(1).
error: Setup script exited with error: command 'swig' failed with exit status 1
尝试按照 here,here 中的步骤操作。但是最新版本的 pip 清除了未完成的构建。我也尝试从 pypi 下载 M2Crypto 提取它但找不到任何 fedora_setup.sh
文件。
此外,深入研究 M2Crypto 中的 setup.py,我发现以下几行。所以看起来他们已经处理了 fedora OS 所以显然没有单独的 fedora_setup.sh 文件在那里。
# Fedora does hat tricks.
if platform.linux_distribution()[0] in ['Fedora', 'CentOS']:
if platform.architecture()[0] == '64bit':
self.swig_opts.append('-D__x86_64__')
elif platform.architecture()[0] == '32bit':
self.swig_opts.append('-D__i386__')
self.include_dirs += [os.path.join(self.openssl, opensslIncludeDir),
os.path.join(os.getcwd(), 'SWIG')]
任何帮助都会很棒。
这是 swig 版本问题。最新版本的 swig 给出了语法错误。我切换到旧版本 (SWIG Version 3.0.2)
来解决这个问题。