OSError:无法打开共享对象文件:即使文件在文件夹中,也没有这样的文件或目录

2024-03-29 10:32:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经为此奋斗了好长一段时间了。我正在尝试安装Yaafe以提取音频功能。我按照这里的说明:https://github.com/Yaafe/Yaafe

一切都安装得很好,但是当我尝试运行测试文件“frames.py”时,会出现以下错误:

  File "frames.py", line 6, in <module>
    from yaafelib import FeaturePlan, Engine, AudioFileProcessor 
  File "/usr/local/lib/python2.7/dist-packages/yaafelib/__init__.py", line 36, in <module>
    from yaafelib.core import (loadComponentLibrary,
  File "/usr/local/lib/python2.7/dist-packages/yaafelib/core.py", line 35, in <module>
    yaafecore = cdll.LoadLibrary('libyaafe-python.so')
  File "/usr/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: libyaafe-python.so: cannot open shared object file: No such file or directory

我已使用以下命令将lib目录包含到LD_LIBRARY_PATH中:

export LD_LIBRARY_PATH=/usr/local/lib

事实上,当我回响图书馆的路径时,它就在那里。另外,当我检查/usr/local/lib时,它有以下内容:

libyaafe-components.so         libyaafe-io.so             python2.7
libyaafe-components.so.0       libyaafe-io.so.0           python3.4
libyaafe-components.so.0.70.0  libyaafe-io.so.0.70.0      site_ruby
libyaafe-core.so               libyaafe-python.so         yaafe
libyaafe-core.so.0             libyaafe-python.so.0
libyaafe-core.so.0.70.0        libyaafe-python.so.0.70.0

难道一切都不应该好吗?我不明白是什么问题。我已经按照指示说到点子上了。


Tags: inpycoreselfsoinitlibusr
1条回答
网友
1楼 · 发布于 2024-03-29 10:32:48

更改代码,以便在异常发生之前打印os.environ。这样您将看到Python进程是否设置了正确的环境。另一个要检查的明显问题是Python进程是否有足够的权限来打开和读取libyaafe-python.so。注意,sudo默认情况下,出于安全原因(例如,请参见here),会限制被调用命令的环境。

相关问题 更多 >