Como instalar o scipy com o pip3?

6

Estou tentando instalar o scipy para python3.x e estou tentando instalá-lo com o pip3

sudo pip3 install scipy

Mas tenho os seguintes erros:

Downloading/unpacking scipy
  Running setup.py (path:/tmp/pip_build_root/scipy/setup.py) egg_info for package scipy

    warning: no previously-included files matching '*_subr_*.f' found under directory 'scipy/linalg/src/id_dist/src'
    no previously-included directories found matching 'scipy/special/tests/data/boost'
    no previously-included directories found matching 'scipy/special/tests/data/gsl'
    no previously-included directories found matching 'doc/build'
    no previously-included directories found matching 'doc/source/generated'
    warning: no previously-included files matching '*.pyc' found anywhere in distribution
    warning: no previously-included files matching '*~' found anywhere in distribution
    warning: no previously-included files matching '*.bak' found anywhere in distribution
    warning: no previously-included files matching '*.swp' found anywhere in distribution
    warning: no previously-included files matching '*.pyo' found anywhere in distribution
Installing collected packages: scipy
  Running setup.py install for scipy
    blas_opt_info:
    blas_mkl_info:
      libraries mkl,vml,guide not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']
      NOT AVAILABLE

    openblas_info:
      libraries openblas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']
      NOT AVAILABLE

    atlas_blas_threads_info:
    Setting PTATLAS=ATLAS
      libraries ptf77blas,ptcblas,atlas not found in ['/usr/local/lib', '/usr/lib/atlas-base', '/usr/lib', '/usr/lib/x86_64-linux-gnu']
      NOT AVAILABLE

    atlas_blas_info:
      libraries f77blas,cblas,atlas not found in ['/usr/local/lib', '/usr/lib/atlas-base', '/usr/lib', '/usr/lib/x86_64-linux-gnu']
      NOT AVAILABLE

    blas_info:
      FOUND:
        language = f77
        library_dirs = ['/usr/lib']
        libraries = ['blas']

      FOUND:
        language = f77
        library_dirs = ['/usr/lib']
        libraries = ['blas']
        define_macros = [('NO_ATLAS_INFO', 1)]

    lapack_opt_info:
    openblas_lapack_info:
      libraries openblas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']
      NOT AVAILABLE

    lapack_mkl_info:
    mkl_info:
      libraries mkl,vml,guide not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']
      NOT AVAILABLE

      NOT AVAILABLE

    atlas_threads_info:
    Setting PTATLAS=ATLAS
      libraries ptf77blas,ptcblas,atlas not found in /usr/local/lib
      libraries lapack_atlas not found in /usr/local/lib
      libraries ptf77blas,ptcblas,atlas not found in /usr/lib/atlas-base
      libraries lapack_atlas not found in /usr/lib/atlas-base
      libraries ptf77blas,ptcblas,atlas not found in /usr/lib
      libraries lapack_atlas not found in /usr/lib
      libraries ptf77blas,ptcblas,atlas not found in /usr/lib/x86_64-linux-gnu
      libraries lapack_atlas not found in /usr/lib/x86_64-linux-gnu
    <class 'numpy.distutils.system_info.atlas_threads_info'>
      NOT AVAILABLE

    atlas_info:
      libraries f77blas,cblas,atlas not found in /usr/local/lib
      libraries lapack_atlas not found in /usr/local/lib
      libraries f77blas,cblas,atlas not found in /usr/lib/atlas-base
      libraries lapack_atlas not found in /usr/lib/atlas-base
      libraries f77blas,cblas,atlas not found in /usr/lib
      libraries lapack_atlas not found in /usr/lib
      libraries f77blas,cblas,atlas not found in /usr/lib/x86_64-linux-gnu
      libraries lapack_atlas not found in /usr/lib/x86_64-linux-gnu
    <class 'numpy.distutils.system_info.atlas_info'>
      NOT AVAILABLE

    lapack_info:
      libraries lapack not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']
      NOT AVAILABLE

    lapack_src_info:
      NOT AVAILABLE

    /usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1526: UserWarning:
        Atlas (http://math-atlas.sourceforge.net/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [atlas]) or by setting
        the ATLAS environment variable.
      warnings.warn(AtlasNotFoundError.__doc__)
    /usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1432: UserWarning:
        Atlas (http://math-atlas.sourceforge.net/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [atlas]) or by setting
        the ATLAS environment variable.
      warnings.warn(AtlasNotFoundError.__doc__)
    /usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1443: UserWarning:
        Lapack (http://www.netlib.org/lapack/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [lapack]) or by setting
        the LAPACK environment variable.
      warnings.warn(LapackNotFoundError.__doc__)
    /usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1446: UserWarning:
        Lapack (http://www.netlib.org/lapack/) sources not found.
        Directories to search for the sources can be specified in the
        numpy/distutils/site.cfg file (section [lapack_src]) or by setting
        the LAPACK_SRC environment variable.
      warnings.warn(LapackSrcNotFoundError.__doc__)
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip_build_root/scipy/setup.py", line 237, in <module>
        setup_package()
      File "/tmp/pip_build_root/scipy/setup.py", line 234, in setup_package
        setup(**metadata)
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/core.py", line 135, in setup
        config = configuration()
      File "/tmp/pip_build_root/scipy/setup.py", line 173, in configuration
        config.add_subpackage('scipy')
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage
        caller_level = 2)
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage
        caller_level = caller_level + 1)
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_setup_py
        config = setup_module.configuration(*args)
      File "scipy/setup.py", line 13, in configuration
        config.add_subpackage('interpolate')
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage
        caller_level = 2)
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage
        caller_level = caller_level + 1)
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_setup_py
        config = setup_module.configuration(*args)
      File "scipy/interpolate/setup.py", line 11, in configuration
        lapack_opt = get_info('lapack_opt', notfound_action=2)
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py", line 356, in get_info
        return cl().get_info(notfound_action)
      File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py", line 514, in get_info
        raise self.notfounderror(self.notfounderror.__doc__)
    numpy.distutils.system_info.LapackNotFoundError:
        Lapack (http://www.netlib.org/lapack/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [lapack]) or by setting
        the LAPACK environment variable.
    Complete output from command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/scipy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-w234i8a7-record/install-record.txt --single-version-externally-managed --compile:
    blas_opt_info:

blas_mkl_info:

  libraries mkl,vml,guide not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']

  NOT AVAILABLE



openblas_info:

  libraries openblas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']

  NOT AVAILABLE



atlas_blas_threads_info:

Setting PTATLAS=ATLAS

  libraries ptf77blas,ptcblas,atlas not found in ['/usr/local/lib', '/usr/lib/atlas-base', '/usr/lib', '/usr/lib/x86_64-linux-gnu']

  NOT AVAILABLE



atlas_blas_info:

  libraries f77blas,cblas,atlas not found in ['/usr/local/lib', '/usr/lib/atlas-base', '/usr/lib', '/usr/lib/x86_64-linux-gnu']

  NOT AVAILABLE



blas_info:

  FOUND:

    language = f77

    library_dirs = ['/usr/lib']

    libraries = ['blas']



  FOUND:

    language = f77

    library_dirs = ['/usr/lib']

    libraries = ['blas']

    define_macros = [('NO_ATLAS_INFO', 1)]



lapack_opt_info:

openblas_lapack_info:

  libraries openblas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']

  NOT AVAILABLE



lapack_mkl_info:

mkl_info:

  libraries mkl,vml,guide not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']

  NOT AVAILABLE



  NOT AVAILABLE



atlas_threads_info:

Setting PTATLAS=ATLAS

  libraries ptf77blas,ptcblas,atlas not found in /usr/local/lib

  libraries lapack_atlas not found in /usr/local/lib

  libraries ptf77blas,ptcblas,atlas not found in /usr/lib/atlas-base

  libraries lapack_atlas not found in /usr/lib/atlas-base

  libraries ptf77blas,ptcblas,atlas not found in /usr/lib

  libraries lapack_atlas not found in /usr/lib

  libraries ptf77blas,ptcblas,atlas not found in /usr/lib/x86_64-linux-gnu

  libraries lapack_atlas not found in /usr/lib/x86_64-linux-gnu

<class 'numpy.distutils.system_info.atlas_threads_info'>

  NOT AVAILABLE



atlas_info:

  libraries f77blas,cblas,atlas not found in /usr/local/lib

  libraries lapack_atlas not found in /usr/local/lib

  libraries f77blas,cblas,atlas not found in /usr/lib/atlas-base

  libraries lapack_atlas not found in /usr/lib/atlas-base

  libraries f77blas,cblas,atlas not found in /usr/lib

  libraries lapack_atlas not found in /usr/lib

  libraries f77blas,cblas,atlas not found in /usr/lib/x86_64-linux-gnu

  libraries lapack_atlas not found in /usr/lib/x86_64-linux-gnu

<class 'numpy.distutils.system_info.atlas_info'>

  NOT AVAILABLE



lapack_info:

  libraries lapack not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu']

  NOT AVAILABLE



lapack_src_info:

  NOT AVAILABLE



/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1526: UserWarning:

    Atlas (http://math-atlas.sourceforge.net/) libraries not found.

    Directories to search for the libraries can be specified in the

    numpy/distutils/site.cfg file (section [atlas]) or by setting

    the ATLAS environment variable.

  warnings.warn(AtlasNotFoundError.__doc__)

/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1432: UserWarning:

    Atlas (http://math-atlas.sourceforge.net/) libraries not found.

    Directories to search for the libraries can be specified in the

    numpy/distutils/site.cfg file (section [atlas]) or by setting

    the ATLAS environment variable.

  warnings.warn(AtlasNotFoundError.__doc__)

/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1443: UserWarning:

    Lapack (http://www.netlib.org/lapack/) libraries not found.

    Directories to search for the libraries can be specified in the

    numpy/distutils/site.cfg file (section [lapack]) or by setting

    the LAPACK environment variable.

  warnings.warn(LapackNotFoundError.__doc__)

/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py:1446: UserWarning:

    Lapack (http://www.netlib.org/lapack/) sources not found.

    Directories to search for the sources can be specified in the

    numpy/distutils/site.cfg file (section [lapack_src]) or by setting

    the LAPACK_SRC environment variable.

  warnings.warn(LapackSrcNotFoundError.__doc__)

Traceback (most recent call last):

  File "<string>", line 1, in <module>

  File "/tmp/pip_build_root/scipy/setup.py", line 237, in <module>

    setup_package()

  File "/tmp/pip_build_root/scipy/setup.py", line 234, in setup_package

    setup(**metadata)

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/core.py", line 135, in setup

    config = configuration()

  File "/tmp/pip_build_root/scipy/setup.py", line 173, in configuration

    config.add_subpackage('scipy')

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage

    caller_level = 2)

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage

    caller_level = caller_level + 1)

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_setup_py

    config = setup_module.configuration(*args)

  File "scipy/setup.py", line 13, in configuration

    config.add_subpackage('interpolate')

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage

    caller_level = 2)

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage

    caller_level = caller_level + 1)

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_setup_py

    config = setup_module.configuration(*args)

  File "scipy/interpolate/setup.py", line 11, in configuration

    lapack_opt = get_info('lapack_opt', notfound_action=2)

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py", line 356, in get_info

    return cl().get_info(notfound_action)

  File "/usr/local/lib/python3.4/dist-packages/numpy/distutils/system_info.py", line 514, in get_info

    raise self.notfounderror(self.notfounderror.__doc__)

numpy.distutils.system_info.LapackNotFoundError:

    Lapack (http://www.netlib.org/lapack/) libraries not found.

    Directories to search for the libraries can be specified in the

    numpy/distutils/site.cfg file (section [lapack]) or by setting

    the LAPACK environment variable.

----------------------------------------
Cleaning up...
Command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/scipy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-w234i8a7-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/scipy
Storing debug log for failure in /home/alvas/.pip/pip.log

Como instalo scipy com pip3 ? Se não houver nenhuma solução com pip3 , de que outra forma posso instalar o scipy para python3.x?

    
por alvas 27.10.2014 / 09:28

1 resposta

8

Ele está dizendo exatamente o que você precisa fazer: instalar todas as dependências de compilação.

Antes de eu chegar lá, eu já disse algumas vezes que eu geralmente não recomendo que as pessoas usem pip (ou pip3 ) para instalar pacotes em sua instalação global do Python. Ambos pip e apt-get são completamente alheios um ao outro. Arquivos podem ser indevidamente sobrescritos ou removidos e porque muito do seu sistema operacional depende do seu ambiente em Python, mexer com ele não é uma boa idéia.

Por isso, recomendo usar um virtualenv (onde você mantém tudo separado do sistema) ou apenas usar pacotes implantados no repositório.

Dito isto, a razão técnica que você não pode instalar é porque o SciPy precisa compilar uma carga de coisas e tem dependências externas para muito disso. Estes precisam ser cumpridos. Você poderia fazer isso manualmente (lendo o erro) ou, neste caso, onde há uma versão do repo, você poderia pedir ao Apt para instalar as dependências de compilação:

sudo apt-get build-dep python3-scipy

E isso instalará uma carga de pacotes métrica. Observe que alguns deles provavelmente serão coisas com as quais você já se encaixou com pip . Eu estou vendo muitas coisas complicadas. Cuidado.

Você ainda precisaria passar por um processo semelhante se estivesse criando um virtualenv, mas eu recomendaria não usar apt para atender suas dependências, porque você provavelmente terá versões diferentes de dependências. Isso não é uma receita de construção saudável.

Em resumo, usar a versão do repo é mais fácil.

    
por Oli 27.10.2014 / 09:46