Can't pip install in py 3.11
Running pip install rio-color fails in Python 3.11.4 and pip 23.1.2
The error message is:
Building wheels for collected packages: rio-color
Building wheel for rio-color (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for rio-color (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [35 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/rio_color
copying rio_color/workers.py -> build/lib.linux-x86_64-cpython-311/rio_color
copying rio_color/operations.py -> build/lib.linux-x86_64-cpython-311/rio_color
copying rio_color/__init__.py -> build/lib.linux-x86_64-cpython-311/rio_color
copying rio_color/utils.py -> build/lib.linux-x86_64-cpython-311/rio_color
creating build/lib.linux-x86_64-cpython-311/rio_color/scripts
copying rio_color/scripts/__init__.py -> build/lib.linux-x86_64-cpython-311/rio_color/scripts
copying rio_color/scripts/cli.py -> build/lib.linux-x86_64-cpython-311/rio_color/scripts
running egg_info
writing rio_color.egg-info/PKG-INFO
writing dependency_links to rio_color.egg-info/dependency_links.txt
writing entry points to rio_color.egg-info/entry_points.txt
writing requirements to rio_color.egg-info/requires.txt
writing top-level names to rio_color.egg-info/top_level.txt
reading manifest file 'rio_color.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'rio_color.egg-info/SOURCES.txt'
copying rio_color/colorspace.c -> build/lib.linux-x86_64-cpython-311/rio_color
copying rio_color/colorspace.pyx -> build/lib.linux-x86_64-cpython-311/rio_color
running build_ext
building 'rio_color.colorspace' extension
creating build/temp.linux-x86_64-cpython-311
creating build/temp.linux-x86_64-cpython-311/rio_color
gcc -pthread -B /home/mambaforge/envs/gis2/compiler_compat -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/mambaforge/envs/gis2/include -fPIC -O2 -isystem /home/mambaforge/envs/gis2/include -fPIC -I/tmp/pip-build-env-gk4m9_aa/overlay/lib/python3.11/site-packages/numpy/core/include -I/home/mambaforge/envs/gis2/include/python3.11 -c rio_color/colorspace.c -o build/temp.linux-x86_64-cpython-311/rio_color/colorspace.o -O2
rio_color/colorspace.c:212:12: fatal error: longintrepr.h: No such file or directory
212 | #include "longintrepr.h"
| ^~~~~~~~~~~~~~~
compilation terminated.
error: command '/usr/bin/gcc' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for rio-color
Failed to build rio-color
ERROR: Could not build wheels for rio-color, which is required to install pyproject.toml-based projects
Same goes for python 3.10.x
Building wheels for collected packages: rio-color Building wheel for rio-color (pyproject.toml): started Building wheel for rio-color (pyproject.toml): finished with status 'error' error: subprocess-exited-with-error
× Building wheel for rio-color (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [31 lines of output] running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-310 creating build/lib.linux-x86_64-cpython-310/rio_color copying rio_color/workers.py -> build/lib.linux-x86_64-cpython-310/rio_color copying rio_color/operations.py -> build/lib.linux-x86_64-cpython-310/rio_color copying rio_color/utils.py -> build/lib.linux-x86_64-cpython-310/rio_color copying rio_color/init.py -> build/lib.linux-x86_64-cpython-310/rio_color creating build/lib.linux-x86_64-cpython-310/rio_color/scripts copying rio_color/scripts/cli.py -> build/lib.linux-x86_64-cpython-310/rio_color/scripts copying rio_color/scripts/init.py -> build/lib.linux-x86_64-cpython-310/rio_color/scripts running egg_info writing rio_color.egg-info/PKG-INFO writing dependency_links to rio_color.egg-info/dependency_links.txt writing entry points to rio_color.egg-info/entry_points.txt writing requirements to rio_color.egg-info/requires.txt writing top-level names to rio_color.egg-info/top_level.txt reading manifest file 'rio_color.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE' writing manifest file 'rio_color.egg-info/SOURCES.txt' copying rio_color/colorspace.c -> build/lib.linux-x86_64-cpython-310/rio_color copying rio_color/colorspace.pyx -> build/lib.linux-x86_64-cpython-310/rio_color running build_ext building 'rio_color.colorspace' extension creating build/temp.linux-x86_64-cpython-310 creating build/temp.linux-x86_64-cpython-310/rio_color gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/tmp/pip-build-env-j3fipc16/overlay/lib/python3.10/site-packages/numpy/core/include -I/usr/local/include/python3.10 -c rio_color/colorspace.c -o build/temp.linux-x86_64-cpython-310/rio_color/colorspace.o -O2 error: command 'gcc' failed: No such file or directory [end of output]
note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for rio-color Failed to build rio-color
This seems to have been fixed on master now, but they haven't cut a new release to pypi. You might have to specify the github source directly when installing using a requirements.txt like file:
rio-color @ git+https://github.com/mapbox/rio-color.git@00ae117
This fork is from a well known geospatial author too: https://github.com/vincentsarago/rio-color
@BielStela Hi! Sorry for the long delay here, but you may find that the version 2.0.1 release solves your issue above.