libcloud 是apache 的顶级项目之一,用于在多个云直接提供统一的接口,既可以用于云计算,也可以用于云存储,使用python 编写。下载手动安装libcloud 后没有问题,试着跑一个测试文件提示:
File "/usr/local/lib/python2.7/ssl.py", line 60, in
import _ssl # if we can't import it, let the error propagate
ImportError: No module named _ssl
判断为SSL module 没有安装, 试着
python -c "import ssl"
出现和之前一样的提示。接着参考这Compiling Python with SSL Support (Fedora 10) 重新下了python 编译下还是出现同样问题。
查看了下,openssl 安装了。转头想用官网上使用的pip 安装,但是得先用easy_install 安装,easy_install 是由PEAK(Python Enterprise Application Kit)开发的setuptools包里带的一个命令,所以使用easy_install实际上是在调用setuptools来完成安装模块的工作。但是在使用easy_install 命令时,提示错误:
Traceback (most recent call last):
File "/usr/bin/easy_install", line 5, in
from pkg_resources import load_entry_point
ImportError: No module named pkg_resources
初步怀疑原因是setuptools 是使用命令:
sudo apt-get install python-setuptools
安装到/usr/bin 目录下,和python 的版本不一致导致的,网上有使用ez_setup.py 安装的方法(据说64 位只有这样安装才行),但还是有问题:
Downloading http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg
Traceback (most recent call last):
File "ez_setup.py", line 278, in
main(sys.argv[1:])
File "ez_setup.py", line 212, in main
from setuptools.command.easy_install import main
zipimport.ZipImportError: can't decompress data; zlib not available
按照官网中安装下载python2.7 对应的版本setuptools-0.6c11-py2.7.egg 安装setuptools 出现同样问题:
Traceback (most recent call last):
File "<string>", line 1, in <module>
zipimport.ZipImportError: can't decompress data; zlib not available
You have new mail in /var/mail/qing
参考stackoverflow 上的方法安装了一些包后可以
sh setuptools-0.6c11-py2.7.egg
安装对应版本的setuptools 了。只是安装在了/usr/local/lib/python2.7/site-packages/ 目录下,每次运行需要加上sudo 才有对应权限:
sudo easy_install pip
安装好pip 后更新了libcloud:
pip install --upgrade apache-libcloud
再使用SSL
python -c "from socket import ssl"
也没有提示之前问题了。