2017-05-23 10 views
0

FFTW CライブラリのPythonラッパーpyFFTWをインストールしようとしていますが、問題が解決しないようです。 私は公式ページ(バージョン3.3.6、fftw-3.3.6-pl2.tar.gz)からFFTWをダウンロードしてREADMEに指定されているLinux Mint 18.1 'Serena'の下でpyFFTWのインストールに失敗しました

<user>$ ./configure 
<user>$ make 
<user>$ sudo make install 

を使用して/usr/local/binでそれをインストールしました。 websiteに推奨されているように、私は

<user>$ pip install pyfftw 

を実行します。ターミナルは、私にこの出力を与える:

<user>$ pip install pyfftw 
     Collecting pyfftw 
     Using cached pyFFTW-0.10.4.tar.gz 
     Building wheels for collected packages: pyfftw 
     Running setup.py bdist_wheel for pyfftw ... error 
     Complete output from command <user>/anaconda2/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-ONw2sB/pyfftw/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmprNCz7Kpip-wheel- --python-tag cp27: 
     . 
     . (shortened by me) 
     . 
     In file included from <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1777:0, 
       from <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18, 
       from <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4, 
       from /tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:462: 
     <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp] 
     #warning "Using deprecated NumPy API, disable it by " \ 
     ^
     /tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c: In function ‘__pyx_f_6pyfftw_6pyfftw_byte_align.isra.48.constprop’: 
     /tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:3086:6: warning: ‘__pyx_v_update_dtype’ may be used uninitialized in this function [-Wmaybe-uninitialized] 
      if (__pyx_t_1) { 
      ^
     gcc -pthread -shared -L<user>/anaconda2/lib -Wl,-rpath=<user>/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.o -L<user>/anaconda2/lib -lfftw3 -lfftw3f -lfftw3l -lfftw3_threads -lfftw3f_threads -lfftw3l_threads -lpython2.7 -o build/lib.linux-x86_64-2.7/pyfftw/pyfftw.so 
     /usr/bin/ld: //usr/local/lib/libfftw3.a(apiplan.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC 
     //usr/local/lib/libfftw3.a: error adding symbols: Bad value 
     collect2: error: ld returned 1 exit status 
     error: command 'gcc' failed with exit status 1 
     ---------------------------------------- 
     Failed building wheel for pyfftw 
     Running setup.py clean for pyfftw 
     Failed to build pyfftw 
     . 
     . (shortened by me) 
     . 
     In file included from <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1777:0, 
       from <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18, 
       from <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4, 
       from /tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:462: 
     <user>/anaconda2/lib/python2.7/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp] 
     #warning "Using deprecated NumPy API, disable it by " \ 
     ^
     /tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c: In function ‘__pyx_f_6pyfftw_6pyfftw_byte_align.isra.48.constprop’: 
     /tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:3086:6: warning: ‘__pyx_v_update_dtype’ may be used uninitialized in this function [-Wmaybe-uninitialized] 
      if (__pyx_t_1) { 
      ^
     gcc -pthread -shared -L<user>/anaconda2/lib -Wl,-rpath=<user>/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.o -L<user>/anaconda2/lib -lfftw3 -lfftw3f -lfftw3l -lfftw3_threads -lfftw3f_threads -lfftw3l_threads -lpython2.7 -o build/lib.linux-x86_64-2.7/pyfftw/pyfftw.so 
     /usr/bin/ld: //usr/local/lib/libfftw3.a(apiplan.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC 
     //usr/local/lib/libfftw3.a: error adding symbols: Bad value 
     collect2: error: ld returned 1 exit status 
     error: command 'gcc' failed with exit status 1 

私はすべての要件をチェックし、すべてのプログラムがFFTWとsetuptoolsのを使用するためにインストールされている必要があるというように...それが不足しているパッケージとは何かを持っていますが、誰もが知っている疑い。私もgithubのソースからビルドしようとしましたが、これは私に同じエラーを与えます。 私は何が間違っている可能性がありますか?

PS:長い端末出力で申し訳ありません...私はすでに(imo)重要な部分に短縮しました。

ありがとうございました!

meetaig

+0

OS名とバージョンを含めるように上記の質問を編集してください。 –

+0

@Knud Larsenタイトルにあります。私はLinux Mintを使用しています。18.1 – meetaig

答えて

0

//usr/local/lib/libfftw3.a:エラーがシンボルを追加:バッド値

FFTW3の非有効ビルド。

必須{libfftw3.so, libfftw3.so.3, libfftw3f.so.3, libfftw3l.so.3, libfftw3_threads.so.3, libfftw3f_threads.so.3, libfftw3l_threads.so.3}

のようなものである、すなわちほとんどの 'パッケージマネージャー'が提供するデフォルトの "(lib)fftw3 +(lib)fftw3-devel"のようなものです。

例、FFTW3を構築:(x86_64版用の構成)

./configure --enable-shared --enable-threads --enable-openmp --enable-mpi --enable-fortran --enable-sse2 --enable-avx 
+0

私はその設定を試みましたが、mpiがインストールされていても '--enable-mpi'で動作しません。このオプションを省略すると、 'pyfftw'をインストールしようとすると、上記と同じ出力が生成されます。 – meetaig

+0

申し訳ありませんが、 'ミント18.1'を見逃しました。なぜシステム 'fftw3'をインストールしないのですか? ... 'sudo apt-get update && sudo apt install libfftw3-dev':6つの' libfftw3'パッケージがインストールされます:https://packages.ubuntu.com/xenial/libfftw3-dev –

+0

ありがとう、最後のコメントあなたの仕事の!私はライブラリがfftw3でインストールされていると思った。しかし 'libfftw3-dec'をインストールしないことが問題でした – meetaig

関連する問題