libev.so.4不存在(但它确实存在)

时间:2015-07-07 19:13:13

标签: python ubuntu installation pip

我尝试使用pip在Ubuntu上安装pyev,但是我收到了这个错误。 libev.so.4确实存在,我在/ usr / local / lib和其他libev.so文件中找到它,所以我认为它只是python的问题并不是在正确的位置查找或者.so被错误地放错了地方。

$ pip install pyev
Collecting pyev
Using cached pyev-0.9.0.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
  File "<string>", line 20, in <module>
  File "/tmp/pip-build-cBE9pk/pyev/setup.py", line 57, in <module>
    check_version(libev_version(), min_libev_version, "libev")
  File "/tmp/pip-build-cBE9pk/pyev/setup.py", line 48, in libev_version
    libev_dll = cdll.LoadLibrary(libev_dll_name)
  File "/usr/local/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "/usr/local/lib/python2.7/ctypes/__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: libev.so.4: cannot open shared object file: No such file or directory

所以我的问题是libev.so文件应该存在哪里,或者,如果它们位于正确的位置,为什么不能找到它们以及如何修复它?

编辑:今天下载并安装了Python版本2.7.10,Pip版本7.1.0(Python手动,使用get-pip.py进行点播)

locate libev为我提供了一系列libevent,libevolution和libevview的文件。与libev相关的唯一事情是usr / lib / libevdocument.so.1,usr / lib / libevdocument.so.1.0.0和/ usr / share / doc / libevdocument1(包括AUTHORS,NEWS.gz,README) ,TODO,changelog.Debian.gz和版权)。由于某种原因在当地没有任何东西

编辑2.0 运行它作为sudo(不能相信我忘记了)给了我一个奇怪的错误消息&#34;目录/home/username/.cache/pip/http或其父目录不归当前用户所有缓存已被禁用。请检查该目录的权限和所有者。如果用sudo执行pip,你可能需要sudo&#39; -H标志。&#34;然后继续重新下载pyev-0.9.0.tar.gz并遇到同样的错误,找不到libev.so.4。

将其作为&#39; sudo -H pip install pyev&#39;再次给了我第一条错误消息(使用缓存的pyev)。无论如何,sudo -H做了什么?我无法在线或在sudo帮助消息中找到任何关于它的信息。

1 个答案:

答案 0 :(得分:0)

查看另一个已正确安装libev的分区,我能够在usr / lib而不是usr / local / lib下找到libev.so文件。将它们复制到该文件夹​​并运行sudo -H pip install pyev似乎已正确安装了pyev。谢谢你的帮助。