pyFFTW не находит libfftw3l.so при импорте

В моей системе 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, который, вероятно, оборачивает C-код FFTW.

Как указать этому файлу pyfftw.cpython-34m.so, где он должен искать правильный путь?

1 ответ

Решение

Проблема была с 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

И добавьте строку перед импортом pyfftw (см. Здесь):

import sys
sys.path.append('/usr/local/lib/libfftw3.so.3')
Другие вопросы по тегам