1

我在使用 python 2.7.2 在 ubuntu 上安装 libcloud 时遇到问题

我从 apache libcloud 网站http://libcloud.apache.org/downloads.html安装了 libcloud 。apache-libcloud-0.9.1.zip 文件。

当我按照示例进行操作时,我可以导入 libcloud,但是在尝试从示例中导入库时,出现以下错误:

import sys
import os
import libcloud
from libcloud.compute.types import Provider
from libcloud.compute.providers import get_driver

Traceback (most recent call last):
  File "/home/ubuntu/workspace/rtbopsConfig/test_code/libcloud.py", line 3, in <module>
    import libcloud
  File "/home/ubuntu/workspace/rtbopsConfig/test_code/libcloud.py", line 4, in <module>
    from libcloud.compute.types import Provider
ImportError: No module named compute.types

我确实安装了以前的版本,但是当我发现该软件包已过期时,我从源代码安装了它。我确实使用了包安装程序卸妆。

那么......如何解决这个问题?软件包位于 /usr/local/lib/python2.7/dist-packages/libcloud/

4

3 回答 3

6

使用 pip 安装 libcloud

pip install apache-libcloud
于 2012-04-11T07:56:13.163 回答
0

您将遇到此问题的 python 文件称为什么?如果你称它为 libcloud.py,它可能会导致这个确切的问题。

要修复,只需将您的文件命名为其他名称并尝试再次运行它。还要确保删除和 libcloud.pyc 文件在同一目录中。

发生的事情是 python 认为您的 libcloud.py 文件是您尝试导入的 libcloud,这显然不起作用,因为您没有定义计算等。

于 2014-11-18T02:42:34.900 回答
0

由于该文件libcloud/compute/types.py存在于您提到的存档中,因此安装版本似乎存在问题。(进口实际上对我有用。)

您可以尝试删除并重新安装它(确保首先删除使用 apt-get/aptitude 安装的所有相关软件包)。

$ sudo pip uninstall libcloud
$ cd /path/to/downloaded/archive
$ sudo python setup.py install

如果要调试问题,通常可以使用获取库版本

>>> import libcloud
>>> print libcloud.__version__
0.9.1
于 2012-04-11T07:55:43.507 回答