我正在使用windows 8,并尝试使用python librtmp。我已经按照以下步骤从这里安装librtmp:http://pythonhosted.org/python-librtmp/。对我来说,在windows powershell中运行时,这两条pip安装线成功地工作了。安装后,它会显示库位于c:\python27\lib\site-packages中。
现在,我打开了一个python ide(idle),输入import librtmp。这给了我以下错误:

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    import librtmp
  File "C:\Python27\lib\site-packages\librtmp\__init__.py", line 14, in <module>
    from librtmp_ffi.binding import librtmp
  File "C:\Python27\lib\site-packages\librtmp_ffi\binding.py", line 13, in <module>
    raise ImportError("No shared library could be loaded, "
ImportError: No shared library could be loaded, make sure that librtmp is installed.

binding.py文件:
import librtmp_config

from .ffi import ffi
from .verifier import verifier

for path in librtmp_config.library_paths:
    try:
        librtmp = ffi.dlopen(path)
        break
    except OSError:
        pass
else:
    raise ImportError("No shared library could be loaded, "
                      "make sure that librtmp is installed.")

librtmp = verifier.load_library()

librtmp_config文件夹中的init.py文件:
"""Runtime configuration of python-librtmp.

   This module provides access to variables used by this library
   and makes it possible to customize some behaviour before :mod:`librtmp`
   is imported.

"""
__all__ = ["library_paths"]

#: This is a list of filenames that python-librtmp
#: will attempt to dynamically load `librtmp` from.
library_paths = ["librtmp.so", "librtmp.so.0", "librtmp.dll", "librtmp.so.1", "librtmp.dylib"]

我对python很陌生,这是我第一次在windows中使用python。当我安装librtmp时,它说安装成功。我完全按照上面链接中的步骤操作。我不明白,为什么它会说。
是路径问题还是安装问题?我在网上寻找解决办法,但没有任何帮助。
我需要单独安装librtmp吗?经过一番阅读我发现,librtmp出现在rtmpdump中。我已经从windows下载了rtmpdump zip文件。但我不知道怎么安装。自述文件说,运行“make sys=mingw”,但是zip文件夹没有makefile!
但rtmpdump文件夹中有一个子文件夹。该文件夹包含librtmp.dll。如果您看到上面的内容,init.py在其库路径中提到一个librtmp.dll。这是否意味着,我必须在init.py中引用这个.dll。但我不知道怎么做。
你能帮忙吗?

最佳答案

断然的!!!!我将librtmp.dll文件从rtmpdump包复制到C:\Python27\DLLs中。
从我配置的binding.py_init_.py文件内容中,python无法找到dll文件。但是,我仍然不知道为什么它能在dlls文件夹中找到这个文件。我只是随便试了一下,结果成功了!
如果你们谁能解释一下逻辑,那就太好了!

关于python - ImportError:无法加载共享库,请确保已安装librtmp,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25555890/

10-11 15:57