Python 无法在Linux Mint 18.1';瑟琳娜';

Python 无法在Linux Mint 18.1';瑟琳娜';,python,linux,pyfftw,Python,Linux,Pyfftw,我正在尝试为FFTWC库安装Python包装器pyFFTW,但似乎无法了解问题所在。 我从官方页面下载了FFTW(版本3.3.6,FFTW-3.3.6-pl2.tar.gz),并使用 <user>$ ./configure <user>$ make <user>$ sudo make install $。/配置 $make $sudo make安装 如提供的自述中所述。然后我就跑 <user>$ pip install pyfftw $pip

我正在尝试为
FFTW
C库安装Python包装器
pyFFTW
,但似乎无法了解问题所在。 我从官方页面下载了FFTW(版本3.3.6,
FFTW-3.3.6-pl2.tar.gz
),并使用

<user>$ ./configure
<user>$ make
<user>$ sudo make install
$。/配置
$make
$sudo make安装
如提供的自述中所述。然后我就跑

<user>$ pip install pyfftw
$pip安装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
$pip安装pyfftw
收集pyfftw
使用缓存的pyFFTW-0.10.4.tar.gz
为收集的包构建控制盘:pyfftw
正在为pyfftw运行setup.py bdist_控制盘。。。错误
从命令/anaconda2/bin/python-u-c“import setuptools,tokenize;uuu file,uuuu=”/tmp/pip-build-ONw2sB/pyfftw/setup.py';f=getattr(tokenize,'open',open)(uu文件uuu);code=f.read()。replace('\r\n','\n');f.close();exec(compile(code,uu文件u,'exec'))“bdist python wheel-d/tmp/tmprz7kpip wheel-27:
.
. (由我缩短)
.
在/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/ndarraytypes.h:1777:0中包含的文件中,
from/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/ndarrayobject.h:18,
from/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/arrayobject.h:4,
从/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:462:
/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/npy_1_7_已弃用_api.h:15:2:警告:#警告“使用弃用的numpy api,通过“#定义npy_NO_已弃用_api_1_7_api_版本”[-Wcpp]禁用它
#警告“使用不推荐的NumPy API,请通过以下方式禁用它”\
^
/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:在函数“\uuuupyx\uf\u6pyfftw\u6pyfftw\ubyte\ualign.isra.48.constprop”中:
/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:3086:6:警告:“\uuupyx\u v\u update\u dtype”可能未初始化地用于此函数[-Wmaybe uninitialized]
如果(uuu pyx_ut_u1){
^
gcc-pthread-shared-L/anaconda2/lib-Wl,-rpath=/anaconda2/lib,--no-as-needbuild/temp.linux-x86_64-2.7/tmp/pip-build-ONw2sB/pyfftw/pyfftw.o-L/anaconda2/lib-lfftw3-lfftw3f-lfftw3f-lfftw3f-lfftw3f-u-threads-lfftw3l-lfftw3l-lf3l-w3l-threads-lpython2.7-o build/lib/lib.linux-pyfftw-64-2.7/pyfftw
/usr/bin/ld://usr/local/lib/libfftw3.a(apiplan.o):创建共享对象时,不能使用针对“.rodata”的重新定位R_X86_64_32S;请使用-fPIC重新编译
//usr/local/lib/libfftw3.a:添加符号时出错:错误值
collect2:错误:ld返回了1个退出状态
错误:命令“gcc”失败,退出状态为1
----------------------------------------
pyfftw的构建控制盘失败
为pyfftw运行setup.py clean
未能生成pyfftw
.
(由我缩短)
.
在/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/ndarraytypes.h:1777:0中包含的文件中,
from/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/ndarrayobject.h:18,
from/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/arrayobject.h:4,
从/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:462:
/anaconda2/lib/python2.7/site packages/numpy/core/include/numpy/npy_1_7_已弃用_api.h:15:2:警告:#警告“使用弃用的numpy api,通过“#定义npy_NO_已弃用_api_1_7_api_版本”[-Wcpp]禁用它
#警告“使用不推荐的NumPy API,请通过以下方式禁用它”\
^
/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:在函数“\uuuupyx\uf\u6pyfftw\u6pyfftw\ubyte\ualign.isra.48.constprop”中:
/tmp/pip-build-ONw2sB/pyfftw/pyfftw/pyfftw.c:3086:6:警告:“\uuupyx\u v\u update\u dtype”可能未初始化地用于此函数[-Wmaybe uninitialized]
如果(uuu pyx_ut_u1){
^
gcc-pthread-shared-L/anaconda2/lib-Wl,-rpath=/anaconda2/lib,--no-as-needbuild/temp.linux-x86_64-2.7/tmp/pip-build-ONw2sB/pyfftw/pyfftw.o-L/anaconda2/lib-lfftw3-lfftw3f-lfftw3f-lfftw3f-lfftw3f-u-threads-lfftw3l-lfftw3l-lf3l-w3l-threads-lpython2.7-o build/lib/lib.linux-pyfftw-64-2.7/pyfftw
/usr/bin/ld://usr/local/lib/libfftw3.a(apiplan.o):创建共享对象时,不能使用针对“.rodata”的重新定位R_X86_64_32S;请使用-fPIC重新编译
//usr/local/lib/libfftw3.a:添加符号时出错:错误值
collect2:错误:ld返回了1个退出状态
错误:命令“gcc”失败,退出状态为1
我怀疑这与缺少的软件包有关,但谁知道呢……我检查了所有的需求,应该安装所有的程序来使用FFTW和setuptools等等。我甚至尝试从github源代码构建,但这给了我同样的错误。 关于我可能做错什么有什么建议吗

PS:很抱歉终端输出太长……我已经把它缩短到(imo)重要部分了

提前感谢您的帮助

米泰格

//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配置)


请编辑上面的问题,以包括操作系统名称和版本。@Knud Larsen它在标题中。我正在使用Linux Mint 18.1I。我尝试了该配置,但它没有使用
--启用mpi
,即使我已经安装了mpi。当尝试安装
pyff时,忽略该选项会产生与上面所示相同的输出
./configure --enable-shared --enable-threads --enable-openmp --enable-mpi --enable-fortran --enable-sse2 --enable-avx