lpsinger / ligo.skymap

Localization of gravitational-wave transients. Mirror of https://git.ligo.org/lscsoft/ligo.skymap
23 stars 18 forks source link

pip subprocess to install build dependencies did not run successfully #27

Closed fredo-3 closed 7 months ago

fredo-3 commented 7 months ago

Hi,

I used Python 3.10.5 and pip 24.0 on Windows 10 to install ligo.skymap using "py -m pip install ligo.skymap" in a Windows command prompt.

Everything goes smoothly, until the installation reaches ligo.skymap-0.6.1. The error appears to be when it tries to install numpy 1.19.3, that may not support my version of Python.

Here is the error script (sorry for the length), could you help me resolve this ?

C:\Users\fredo\Downloads>py -m pip install ligo.skymap
Collecting ligo.skymap
  Using cached ligo.skymap-1.1.2.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting astroplan>=0.7 (from ligo.skymap)
  Using cached astroplan-0.9.1.tar.gz (140 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: astropy>=5.0 in c:\users\fredo\appdata\local\programs\python\python310\lib\site-packages (from ligo.skymap) (6.0.0)
Collecting astropy-healpix>=0.3 (from ligo.skymap)
  Using cached astropy_healpix-1.0.2-cp39-abi3-win_amd64.whl.metadata (4.2 kB)
Collecting healpy (from ligo.skymap)
  Using cached healpy-1.16.6.tar.gz (4.4 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting h5py (from ligo.skymap)
  Using cached h5py-3.10.0-cp310-cp310-win_amd64.whl.metadata (2.5 kB)
INFO: pip is looking at multiple versions of ligo-skymap to determine which version is compatible with other requirements. This could take a while.
Collecting ligo.skymap
  Using cached ligo.skymap-1.1.1.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.1.0.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.0.7.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.0.6.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.0.5.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.0.4.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.0.3.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
INFO: pip is still looking at multiple versions of ligo-skymap to determine which version is compatible with other requirements. This could take a while.
  Using cached ligo.skymap-1.0.2.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.0.1.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-1.0.0.tar.gz (2.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached ligo.skymap-0.6.1.tar.gz (2.0 MB)
  Installing build dependencies ... error
  error: subprocess-exited-with-error

  × pip subprocess to install build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [237 lines of output]
      Collecting setuptools
        Using cached setuptools-69.2.0-py3-none-any.whl.metadata (6.3 kB)
      Collecting setuptools_scm
        Using cached setuptools_scm-8.0.4-py3-none-any.whl.metadata (6.4 kB)
      Collecting wheel
        Using cached wheel-0.43.0-py3-none-any.whl.metadata (2.2 kB)
      Collecting extension-helpers
        Using cached extension_helpers-1.1.1-py3-none-any.whl.metadata (2.2 kB)
      Collecting numpy==1.19.3
        Using cached numpy-1.19.3.zip (7.3 MB)
        Installing build dependencies: started
        Installing build dependencies: finished with status 'done'
        Getting requirements to build wheel: started
        Getting requirements to build wheel: finished with status 'done'
        Preparing metadata (pyproject.toml): started
        Preparing metadata (pyproject.toml): finished with status 'error'
        error: subprocess-exited-with-error

        Preparing metadata (pyproject.toml) did not run successfully.
        exit code: 1

        [204 lines of output]
        setup.py:67: RuntimeWarning: NumPy 1.19.3 may not yet support Python 3.10.
          warnings.warn(
        Running from numpy source directory.
        setup.py:480: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
          run_build = parse_setuppy_commands()
        C:\Users\fredo\AppData\Local\Temp\pip-install-4iwuyg23\numpy_770e2c8f497a4a5a94196e5f84334232\tools\cythonize.py:67: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
          from distutils.version import LooseVersion
        Processing numpy/random\_bounded_integers.pxd.in
        Processing numpy/random\bit_generator.pyx
        Processing numpy/random\mtrand.pyx
        Processing numpy/random\_bounded_integers.pyx.in
        Processing numpy/random\_common.pyx
        Processing numpy/random\_generator.pyx
        Processing numpy/random\_mt19937.pyx
        Processing numpy/random\_pcg64.pyx
        Processing numpy/random\_philox.pyx
        Processing numpy/random\_sfc64.pyx
        Cythonizing sources
        blas_opt_info:
        blas_mkl_info:
        No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
        customize MSVCCompiler
          libraries mkl_rt not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        blis_info:
          libraries blis not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        openblas_info:
          libraries openblas not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
        get_default_fcompiler: matching types: '['gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95', 'intelvem', 'intelem', 'flang']'
        customize GnuFCompiler
        Could not locate executable g77
        Could not locate executable f77
        customize IntelVisualFCompiler
        Could not locate executable ifort
        Could not locate executable ifl
        customize AbsoftFCompiler
        Could not locate executable f90
        customize CompaqVisualFCompiler
        Could not locate executable DF
        customize IntelItaniumVisualFCompiler
        Could not locate executable efl
        customize Gnu95FCompiler
        Could not locate executable gfortran
        Could not locate executable f95
        customize G95FCompiler
        Could not locate executable g95
        customize IntelEM64VisualFCompiler
        customize IntelEM64TFCompiler
        Could not locate executable efort
        Could not locate executable efc
        customize PGroupFlangCompiler
        Could not locate executable flang
        don't know how to compile Fortran code on platform 'nt'
          NOT AVAILABLE

        atlas_3_10_blas_threads_info:
        Setting PTATLAS=ATLAS
          libraries tatlas not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        atlas_3_10_blas_info:
          libraries satlas not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        atlas_blas_threads_info:
        Setting PTATLAS=ATLAS
          libraries ptf77blas,ptcblas,atlas not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        atlas_blas_info:
          libraries f77blas,cblas,atlas not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        accelerate_info:
          NOT AVAILABLE

        C:\Users\fredo\AppData\Local\Temp\pip-install-4iwuyg23\numpy_770e2c8f497a4a5a94196e5f84334232\numpy\distutils\system_info.py:1914: UserWarning:
            Optimized (vendor) Blas libraries are not found.
            Falls back to netlib Blas library which has worse performance.
            A better performance should be easily gained by switching
            Blas library.
          if self._calc_info(blas):
        blas_info:
          libraries blas not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        C:\Users\fredo\AppData\Local\Temp\pip-install-4iwuyg23\numpy_770e2c8f497a4a5a94196e5f84334232\numpy\distutils\system_info.py:1914: UserWarning:
            Blas (http://www.netlib.org/blas/) libraries not found.
            Directories to search for the libraries can be specified in the
            numpy/distutils/site.cfg file (section [blas]) or by setting
            the BLAS environment variable.
          if self._calc_info(blas):
        blas_src_info:
          NOT AVAILABLE

        C:\Users\fredo\AppData\Local\Temp\pip-install-4iwuyg23\numpy_770e2c8f497a4a5a94196e5f84334232\numpy\distutils\system_info.py:1914: UserWarning:
            Blas (http://www.netlib.org/blas/) sources not found.
            Directories to search for the sources can be specified in the
            numpy/distutils/site.cfg file (section [blas_src]) or by setting
            the BLAS_SRC environment variable.
          if self._calc_info(blas):
          NOT AVAILABLE

        non-existing path in 'numpy\\distutils': 'site.cfg'
        lapack_opt_info:
        lapack_mkl_info:
          libraries mkl_rt not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        openblas_lapack_info:
          libraries openblas not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        openblas_clapack_info:
          libraries openblas,lapack not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        flame_info:
          libraries flame not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        atlas_3_10_threads_info:
        Setting PTATLAS=ATLAS
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries tatlas,tatlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries lapack_atlas not found in C:\
          libraries tatlas,tatlas not found in C:\
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
          libraries tatlas,tatlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
        <class 'numpy.distutils.system_info.atlas_3_10_threads_info'>
          NOT AVAILABLE

        atlas_3_10_info:
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries satlas,satlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries lapack_atlas not found in C:\
          libraries satlas,satlas not found in C:\
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
          libraries satlas,satlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
        <class 'numpy.distutils.system_info.atlas_3_10_info'>
          NOT AVAILABLE

        atlas_threads_info:
        Setting PTATLAS=ATLAS
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries ptf77blas,ptcblas,atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries lapack_atlas not found in C:\
          libraries ptf77blas,ptcblas,atlas not found in C:\
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
          libraries ptf77blas,ptcblas,atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
        <class 'numpy.distutils.system_info.atlas_threads_info'>
          NOT AVAILABLE

        atlas_info:
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries f77blas,cblas,atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib
          libraries lapack_atlas not found in C:\
          libraries f77blas,cblas,atlas not found in C:\
          libraries lapack_atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
          libraries f77blas,cblas,atlas not found in C:\Users\fredo\AppData\Local\Programs\Python\Python310\libs
        <class 'numpy.distutils.system_info.atlas_info'>
          NOT AVAILABLE

        lapack_info:
          libraries lapack not found in ['C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\lib', 'C:\\', 'C:\\Users\\fredo\\AppData\\Local\\Programs\\Python\\Python310\\libs']
          NOT AVAILABLE

        C:\Users\fredo\AppData\Local\Temp\pip-install-4iwuyg23\numpy_770e2c8f497a4a5a94196e5f84334232\numpy\distutils\system_info.py:1748: 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.
          return getattr(self, '_calc_info_{}'.format(name))()
        lapack_src_info:
          NOT AVAILABLE

        C:\Users\fredo\AppData\Local\Temp\pip-install-4iwuyg23\numpy_770e2c8f497a4a5a94196e5f84334232\numpy\distutils\system_info.py:1748: 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.
          return getattr(self, '_calc_info_{}'.format(name))()
          NOT AVAILABLE

        numpy_linalg_lapack_lite:
          FOUND:
            language = c
            define_macros = [('HAVE_BLAS_ILP64', None), ('BLAS_SYMBOL_SUFFIX', '64_')]

        C:\Users\fredo\AppData\Local\Programs\Python\Python310\lib\distutils\dist.py:274: UserWarning: Unknown distribution option: 'define_macros'
          warnings.warn(msg)
        running dist_info
        running build_src
        build_src
        building py_modules sources
        creating build
        creating build\src.win-amd64-3.10
        creating build\src.win-amd64-3.10\numpy
        creating build\src.win-amd64-3.10\numpy\distutils
        building library "npymath" sources
        error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.microsoft.com/downloads/
        [end of output]

        note: This error originates from a subprocess, and is likely not a problem with pip.
      error: metadata-generation-failed

      Encountered error while generating package metadata.

      See above for output.

      note: This is an issue with the package mentioned above, not pip.
      hint: See above for details.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
lpsinger commented 7 months ago

Unfortunately, ligo.skymap does not support Windows because it has dependencies on two packages (healpy and lalsuite) that do not support Windows.

If you need to use ligo.skymap on Windows, try Windows Subsystem for Linux or another Linux virtualization solution.

fredo-3 commented 7 months ago

Hi, thank you for answering, I tried on a newly installed 22.04 Ubuntu Desktop, which has default Python 3.10.12, pip 22.0.2, glibc 2.31 and gcc 11.4.0, and library installation succeeded !