esheldon / fitsio

A python package for FITS input/output wrapping cfitsio
GNU General Public License v2.0
134 stars 58 forks source link

Error when install fitsio on linux, both 'pip install fitsio' and 'python setup.py install' failed. #406

Open Sherlockids opened 4 months ago

Sherlockids commented 4 months ago
  1. Firstly, I used the 'pip install fitsio', failed. Collecting fitsio Downloading fitsio-1.2.4.tar.gz (4.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 8.6 MB/s eta 0:00:00 Preparing metadata (setup.py) ... done Requirement already satisfied: numpy in ./anaconda3/lib/python3.11/site-packages (from fitsio) (1.26.4) Building wheels for collected packages: fitsio Building wheel for fitsio (setup.py) ... error error: subprocess-exited-with-error

    × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [191 lines of output] /home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/init.py:80: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated. !!

          ********************************************************************************
          Requirements should be satisfied by a PEP 517 installer.
          If you are using pip, you can try `pip install --use-pep517`.
          ********************************************************************************

    !! dist.fetch_build_eggs(dist.setup_requires) running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/init.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/fits_exceptions.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/fitslib.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/header.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/util.py -> build/lib.linux-x86_64-cpython-311/fitsio creating build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/init.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/base.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/image.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/table.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu creating build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/init.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/checks.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/makedata.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_empty_slice.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_header.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_header_junk.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_image.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_image_compression.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_lib.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_table.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_warnings.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests running egg_info writing fitsio.egg-info/PKG-INFO writing dependency_links to fitsio.egg-info/dependency_links.txt writing requirements to fitsio.egg-info/requires.txt writing top-level names to fitsio.egg-info/top_level.txt reading manifest file 'fitsio.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE.txt' writing manifest file 'fitsio.egg-info/SOURCES.txt' /home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/build_py.py:204: _Warning: Package 'fitsio.test_images' is absent from the packages configuration. !!

          ********************************************************************************
          ############################
          # Package would be ignored #
          ############################
          Python recognizes 'fitsio.test_images' as an importable package[^1],
          but it is absent from setuptools' `packages` configuration.
    
          This leads to an ambiguous overall configuration. If you want to distribute this
          package, please make sure that 'fitsio.test_images' is explicitly added
          to the `packages` configuration field.
    
          Alternatively, you can also rely on setuptools' discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).
    
          You can read more about "package discovery" on setuptools documentation page:
    
          - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
    
          If you don't want 'fitsio.test_images' to be distributed and are
          already explicitly excluding 'fitsio.test_images' via
          `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
          you can try to use `exclude_package_data`, or `include-package-data=False` in
          combination with a more fine grained `package-data` configuration.
    
          You can read more about "package data files" on setuptools documentation page:
    
          - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
    
          [^1]: For Python, any directory (with suitable naming) can be imported,
                even if it does not contain any `.py` files.
                On the other hand, currently there is no concept of package data
                directory, all directories are treated like packages.
          ********************************************************************************

    !! check.warn(importable) copying fitsio/fitsio_pywrap.c -> build/lib.linux-x86_64-cpython-311/fitsio creating build/lib.linux-x86_64-cpython-311/fitsio/test_images copying fitsio/test_images/test_gzip_compressed_image.fits.fz -> build/lib.linux-x86_64-cpython-311/fitsio/test_images running build_ext checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/Makefile.in Hunk #1 succeeded at 70 (offset 1 line). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/Makefile.in Hunk #1 succeeded at 70 (offset 1 line). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure.in Hunk #1 succeeded at 129 (offset 76 lines). Hunk #2 succeeded at 153 (offset 76 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure.in Hunk #1 succeeded at 129 (offset 76 lines). Hunk #2 succeeded at 153 (offset 76 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure Hunk #3 succeeded at 3787 (offset 1162 lines). Hunk #4 succeeded at 3816 with fuzz 1 (offset 1162 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure Hunk #3 succeeded at 3787 (offset 1162 lines). Hunk #4 succeeded at 3816 with fuzz 1 (offset 1162 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitscore.c Hunk #1 succeeded at 197 (offset 3 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitscore.c Hunk #1 succeeded at 197 (offset 3 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio.h Hunk #1 succeeded at 810 (offset -1 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio.h Hunk #1 succeeded at 810 (offset -1 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio2.h patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio2.h checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/putcols.c patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/putcols.c checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for main in -lbz2... no configure: error: Unable to locate bz2 library needed when enabling bzip2 support; try specifying the path Traceback (most recent call last): File "", line 2, in File "", line 34, in File "/tmp/pip-install-twz00puu/fitsio_237768f247e445c2ba8dd3ab773726fb/setup.py", line 319, in setup( File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/init.py", line 103, in setup return distutils.core.setup(**attrs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup return run_commands(dist) ^^^^^^^^^^^^^^^^^^ File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands dist.run_commands() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands self.run_command(cmd) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command super().run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/wheel/bdist_wheel.py", line 364, in run self.run_command("build") File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command self.distribution.run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command super().run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 131, in run self.run_command(cmd_name) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command self.distribution.run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command super().run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/tmp/pip-install-twz00puu/fitsio_237768f247e445c2ba8dd3ab773726fb/setup.py", line 106, in run build_ext.run(self) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/build_ext.py", line 88, in run _build_ext.run(self) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run _build_ext.build_ext.run(self) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 345, in run self.build_extensions() File "/tmp/pip-install-twz00puu/fitsio_237768f247e445c2ba8dd3ab773726fb/setup.py", line 130, in build_extensions self.configure_cfitsio( File "/tmp/pip-install-twz00puu/fitsio_237768f247e445c2ba8dd3ab773726fb/setup.py", line 272, in configure_cfitsio raise ValueError( ValueError: could not configure cfitsio 4.4.1-20240617 [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for fitsio Running setup.py clean for fitsio Failed to build fitsio ERROR: Could not build wheels for fitsio, which is required to install pyproject.toml-based projects

2.Then, I used the 'python setup.py install', failed agian.

/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/init.py:80: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated. !!

    ********************************************************************************
    Requirements should be satisfied by a PEP 517 installer.
    If you are using pip, you can try `pip install --use-pep517`.
    ********************************************************************************

!! dist.fetch_build_eggs(dist.setup_requires) running install /home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. !!

    ********************************************************************************
    Please avoid running ``setup.py`` directly.
    Instead, use pypa/build, pypa/installer or other
    standards-based tools.

    See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
    ********************************************************************************

!! self.initialize_options() /home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated. !!

    ********************************************************************************
    Please avoid running ``setup.py`` and ``easy_install``.
    Instead, use pypa/build, pypa/installer or other
    standards-based tools.

    See https://github.com/pypa/setuptools/issues/917 for details.
    ********************************************************************************

!! self.initialize_options() running bdist_egg running egg_info creating fitsio.egg-info writing fitsio.egg-info/PKG-INFO writing dependency_links to fitsio.egg-info/dependency_links.txt writing requirements to fitsio.egg-info/requires.txt writing top-level names to fitsio.egg-info/top_level.txt writing manifest file 'fitsio.egg-info/SOURCES.txt' reading manifest file 'fitsio.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE.txt' writing manifest file 'fitsio.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/init.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/fits_exceptions.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/fitslib.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/header.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/util.py -> build/lib.linux-x86_64-cpython-311/fitsio creating build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/init.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/base.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/image.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/table.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu creating build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/init.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/checks.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/makedata.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_empty_slice.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_header.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_header_junk.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_image.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_image_compression.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_lib.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_table.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_warnings.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests /home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/build_py.py:204: _Warning: Package 'fitsio.test_images' is absent from the packages configuration. !!

    ********************************************************************************
    ############################
    # Package would be ignored #
    ############################
    Python recognizes 'fitsio.test_images' as an importable package[^1],
    but it is absent from setuptools' `packages` configuration.

    This leads to an ambiguous overall configuration. If you want to distribute this
    package, please make sure that 'fitsio.test_images' is explicitly added
    to the `packages` configuration field.

    Alternatively, you can also rely on setuptools' discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" on setuptools documentation page:

    - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

    If you don't want 'fitsio.test_images' to be distributed and are
    already explicitly excluding 'fitsio.test_images' via
    `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
    you can try to use `exclude_package_data`, or `include-package-data=False` in
    combination with a more fine grained `package-data` configuration.

    You can read more about "package data files" on setuptools documentation page:

    - https://setuptools.pypa.io/en/latest/userguide/datafiles.html

    [^1]: For Python, any directory (with suitable naming) can be imported,
          even if it does not contain any `.py` files.
          On the other hand, currently there is no concept of package data
          directory, all directories are treated like packages.
    ********************************************************************************

!! check.warn(importable) copying fitsio/fitsio_pywrap.c -> build/lib.linux-x86_64-cpython-311/fitsio creating build/lib.linux-x86_64-cpython-311/fitsio/test_images copying fitsio/test_images/test_gzip_compressed_image.fits.fz -> build/lib.linux-x86_64-cpython-311/fitsio/test_images running build_ext checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/Makefile.in Hunk #1 succeeded at 70 (offset 1 line). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/Makefile.in Hunk #1 succeeded at 70 (offset 1 line). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure.in Hunk #1 succeeded at 129 (offset 76 lines). Hunk #2 succeeded at 153 (offset 76 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure.in Hunk #1 succeeded at 129 (offset 76 lines). Hunk #2 succeeded at 153 (offset 76 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure Hunk #3 succeeded at 3787 (offset 1162 lines). Hunk #4 succeeded at 3816 with fuzz 1 (offset 1162 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure Hunk #3 succeeded at 3787 (offset 1162 lines). Hunk #4 succeeded at 3816 with fuzz 1 (offset 1162 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitscore.c Hunk #1 succeeded at 197 (offset 3 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitscore.c Hunk #1 succeeded at 197 (offset 3 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio.h Hunk #1 succeeded at 810 (offset -1 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio.h Hunk #1 succeeded at 810 (offset -1 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio2.h patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio2.h checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/putcols.c patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/putcols.c checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for main in -lbz2... no configure: error: Unable to locate bz2 library needed when enabling bzip2 support; try specifying the path Traceback (most recent call last): File "/home/wenlk/Downloads/fitsio/setup.py", line 319, in setup( File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/init.py", line 103, in setup return distutils.core.setup(**attrs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 185, in setup return run_commands(dist) ^^^^^^^^^^^^^^^^^^ File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 201, in run_commands dist.run_commands() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands self.run_command(cmd) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command super().run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/install.py", line 84, in run self.do_egg_install() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/install.py", line 132, in do_egg_install self.run_command('bdist_egg') File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command self.distribution.run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command super().run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/bdist_egg.py", line 167, in run cmd = self.call_command('install_lib', warn_dir=0) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/bdist_egg.py", line 153, in call_command self.run_command(cmdname) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command self.distribution.run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command super().run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/install_lib.py", line 11, in run self.build() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/command/install_lib.py", line 111, in build self.run_command('build_ext') File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command self.distribution.run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/dist.py", line 989, in run_command super().run_command(command) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/wenlk/Downloads/fitsio/setup.py", line 106, in run build_ext.run(self) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/command/build_ext.py", line 88, in run _build_ext.run(self) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run _build_ext.build_ext.run(self) File "/home/wenlk/anaconda3/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 345, in run self.build_extensions() File "/home/wenlk/Downloads/fitsio/setup.py", line 130, in build_extensions self.configure_cfitsio( File "/home/wenlk/Downloads/fitsio/setup.py", line 272, in configure_cfitsio raise ValueError( ValueError: could not configure cfitsio 4.4.1-20240617

Sherlockids commented 4 months ago
  1. I also tried the 'pip install --use-pep517 fitsio', but still failed. Collecting fitsio Using cached fitsio-1.2.4.tar.gz (4.5 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... done Requirement already satisfied: numpy in /home/wenlk/anaconda3/lib/python3.11/site-packages (from fitsio) (1.24.4) Building wheels for collected packages: fitsio Building wheel for fitsio (pyproject.toml) ... error error: subprocess-exited-with-error

    × Building wheel for fitsio (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [190 lines of output] running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/init.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/fits_exceptions.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/fitslib.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/header.py -> build/lib.linux-x86_64-cpython-311/fitsio copying fitsio/util.py -> build/lib.linux-x86_64-cpython-311/fitsio creating build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/init.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/base.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/image.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu copying fitsio/hdu/table.py -> build/lib.linux-x86_64-cpython-311/fitsio/hdu creating build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/init.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/checks.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/makedata.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_empty_slice.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_header.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_header_junk.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_image.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_image_compression.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_lib.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_table.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests copying fitsio/tests/test_warnings.py -> build/lib.linux-x86_64-cpython-311/fitsio/tests running egg_info writing fitsio.egg-info/PKG-INFO writing dependency_links to fitsio.egg-info/dependency_links.txt writing requirements to fitsio.egg-info/requires.txt writing top-level names to fitsio.egg-info/top_level.txt reading manifest file 'fitsio.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE.txt' writing manifest file 'fitsio.egg-info/SOURCES.txt' /tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/command/build_py.py:215: _Warning: Package 'fitsio.test_images' is absent from the packages configuration. !!

          ********************************************************************************
          ############################
          # Package would be ignored #
          ############################
          Python recognizes 'fitsio.test_images' as an importable package[^1],
          but it is absent from setuptools' `packages` configuration.
    
          This leads to an ambiguous overall configuration. If you want to distribute this
          package, please make sure that 'fitsio.test_images' is explicitly added
          to the `packages` configuration field.
    
          Alternatively, you can also rely on setuptools' discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).
    
          You can read more about "package discovery" on setuptools documentation page:
    
          - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
    
          If you don't want 'fitsio.test_images' to be distributed and are
          already explicitly excluding 'fitsio.test_images' via
          `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
          you can try to use `exclude_package_data`, or `include-package-data=False` in
          combination with a more fine grained `package-data` configuration.
    
          You can read more about "package data files" on setuptools documentation page:
    
          - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
    
          [^1]: For Python, any directory (with suitable naming) can be imported,
                even if it does not contain any `.py` files.
                On the other hand, currently there is no concept of package data
                directory, all directories are treated like packages.
          ********************************************************************************

    !! check.warn(importable) copying fitsio/fitsio_pywrap.c -> build/lib.linux-x86_64-cpython-311/fitsio creating build/lib.linux-x86_64-cpython-311/fitsio/test_images copying fitsio/test_images/test_gzip_compressed_image.fits.fz -> build/lib.linux-x86_64-cpython-311/fitsio/test_images running build_ext checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/Makefile.in Hunk #1 succeeded at 70 (offset 1 line). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/Makefile.in Hunk #1 succeeded at 70 (offset 1 line). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure.in Hunk #1 succeeded at 129 (offset 76 lines). Hunk #2 succeeded at 153 (offset 76 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure.in Hunk #1 succeeded at 129 (offset 76 lines). Hunk #2 succeeded at 153 (offset 76 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure Hunk #3 succeeded at 3787 (offset 1162 lines). Hunk #4 succeeded at 3816 with fuzz 1 (offset 1162 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/configure Hunk #3 succeeded at 3787 (offset 1162 lines). Hunk #4 succeeded at 3816 with fuzz 1 (offset 1162 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitscore.c Hunk #1 succeeded at 197 (offset 3 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitscore.c Hunk #1 succeeded at 197 (offset 3 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio.h Hunk #1 succeeded at 810 (offset -1 lines). patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio.h Hunk #1 succeeded at 810 (offset -1 lines). checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio2.h patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/fitsio2.h checking file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/putcols.c patching file build/temp.linux-x86_64-cpython-311/cfitsio-4.4.1-20240617/putcols.c checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for main in -lbz2... no configure: error: Unable to locate bz2 library needed when enabling bzip2 support; try specifying the path Traceback (most recent call last): File "/home/wenlk/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in main() File "/home/wenlk/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main json_out['return_val'] = hook(hook_input['kwargs']) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/wenlk/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel return _build_backend().build_wheel(wheel_directory, config_settings, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 415, in build_wheel return self._build_with_temp_dir( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 397, in _build_with_temp_dir self.run_setup() File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 497, in run_setup super().run_setup(setup_script=setup_script) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 313, in run_setup exec(code, locals()) File "", line 319, in File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/init.py", line 103, in setup return distutils.core.setup(attrs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 184, in setup return run_commands(dist) ^^^^^^^^^^^^^^^^^^ File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 200, in run_commands dist.run_commands() File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 970, in run_commands self.run_command(cmd) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 974, in run_command super().run_command(command) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 989, in run_command cmd_obj.run() File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/command/bdist_wheel.py", line 373, in run self.run_command("build") File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command self.distribution.run_command(command) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 974, in run_command super().run_command(command) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 989, in run_command cmd_obj.run() File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 135, in run self.run_command(cmd_name) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command self.distribution.run_command(command) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 974, in run_command super().run_command(command) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 989, in run_command cmd_obj.run() File "", line 106, in run File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/command/build_ext.py", line 93, in run _build_ext.run(self) File "/tmp/pip-build-env-s2ethf1g/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 359, in run self.build_extensions() File "", line 130, in build_extensions File "", line 272, in configure_cfitsio ValueError: could not configure cfitsio 4.4.1-20240617 [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for fitsio Failed to build fitsio ERROR: Could not build wheels for fitsio, which is required to install pyproject.toml-based projects

esheldon commented 4 months ago

You need to have the bzip2 library installed.

esheldon commented 4 months ago

Note you can also use conda install fitsio which will pull in dependencies

Sherlockids commented 4 months ago

Note you can also use conda install fitsio which will pull in dependencies

When I run 'conda install fitsio', still failed: Retrieving notices: ...working... done Channels:

PackagesNotFoundError: The following packages are not available from current channels:

Current channels:

To search for alternate channels that may provide the conda package you're looking for, navigate to

https://anaconda.org

and use the search bar at the top of the page.

esheldon commented 4 months ago

You need conda forge in your channels

conda config --add channels conda-forge
conda install fitsio