Pip,pip3和冲突的python发行版

时间:2017-11-15 05:13:51

标签: python linux gcc anaconda fpic

我无法将python包PyTransit和ktransit安装到Anaconda 3(在Linux上)。似乎很多其他人都有类似的错误,但他们的解决方案都没有对我有用。有很多东西在继续:

pip install ktransit给出:

/usr/bin/ld: /home/name/anaconda3/lib/libgfortran.a(pause.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC

/home/name/anaconda3/lib/libgfortran.a: error adding symbols: Bad value
    collect2: error: ld returned 1 exit status

我会尝试使用./configure和--enable-shared,但是没有配置文件。我尝试将extra_compile_args = ["-fPIC"], extra_link_args=["-fPIC"]添加到setup.py(如https://github.com/h5py/h5py/issues/851中所示),但这没有做任何事情。

pip install pytransit会出现不同的错误:

 #warning "Using deprecated NumPy API, disable it by " \

Warning: src/gimenez.f90:35: Illegal preprocessor directive
    Warning: src/gimenez.f90:36: Illegal preprocessor directive
    Warning: src/gimenez.f90:37: Illegal preprocessor directive
    src/gimenez.f90:271.33:

        real(8), dimension(CHUNK_SIZE, npol) :: d
                                     1
    Error: Symbol 'chunk_size' at (1) has no IMPLICIT type

这里有趣的地方。使用pip3(或sudo pip)允许ktransit成功安装,但对pytransit没有任何作用。 Pip和pip3似乎与不同的地方联系在一起:

which pip
/home/name/anaconda3/bin/pip

 which pip3
/usr/local/bin/pip3

which python
/home/name/anaconda3/bin/python

最后,当我尝试通过anaconda在jupyter笔记本中导入ktransit时,它会失败,但是当我在Jupyter QtConsole中导入ktransit时,它会成功,但似乎包含自身并且不提供实际功能。我的意思是我无法在模块中引用任何内容,并且:

Help on package ktransit:

NAME
    ktransit

PACKAGE CONTENTS
    ktransit (package)
    setup

FILE
    (built-in)

我在想,无论什么版本的python与/ usr / bin相关联都会让我感到不安......或者我的gcc或libgfortran可能有问题?我有gcc版本4.8.5和6(gcc --version给出4.8.5,但-update-alternatives表示只有一个版本,6)。

感谢您花时间阅读这篇文章。我会非常感谢任何建议或想法!

1 个答案:

答案 0 :(得分:0)

想出来 - 我卸载了Anaconda,确保我的python指向正确的方向,然后使用sudo python -m pip install。感谢Nagev推动我摆脱Anaconda!