pyFFTW 在导入时找不到 libfftw3l.so

pyFFTW doesn't find libfftw3l.so while import

在我的Raspbian系统中,我已经成功安装了pyFFTW,但是导入包时出现问题。

  import pyfftw
    File "/usr/local/lib/python3.4/dist-packages/pyfftw/__init__.py", line 16, in <module>
  from .pyfftw import ( 
ImportError: libfftw3l.so.3: cannot open shared object file: No such file or directory

实际上,我已经从源代码安装了 FFTW。


我已经深入研究 __init__.py 并且有一个 相对导入 行:

from .pyfftw import (
              FFTW
              blah blah )

中没有模块 pyfftw。文件夹,但我想这一行指示 ./pyfftw.cpython-34m.so 文件,它可能包含 FFTW 的 C 代码。

如何告诉这个 pyfftw.cpython-34m.so 文件应该在哪里寻找正确的路径?

问题出在 PYTHONPATH 上。

检查文件是否在磁盘的某处:

$ sudo file / -name libfftw3l.so.3
/home/pi/bin/fftw-3.3.5/.libs/libfftw3.so.3
/usr/lib/arm-linux-gnueabihf/libfftw3.so.3
/usr/local/lib/libfftw3.so.3

并在 import pyfftw 之前添加一行(参见 here):

import sys
sys.path.append('/usr/local/lib/libfftw3.so.3')