ocampor / image-quality

Image quality is an open source software library for Image Quality Assessment (IQA).
Apache License 2.0
394 stars 85 forks source link

can't install image-quality lib with pip #24

Closed pvojnisek closed 3 years ago

pvojnisek commented 4 years ago

Describe the bug The install process exits with an error. Please find the detailed log below. Using Python 3.8.3 (default, May 16 2020, 07:08:28) [GCC 8.3.0] on linux in docker container works like a charm, I only have problems with Python 3.7.3.

Python version

Python 3.7.3 (default, Mar 27 2019, 22:11:17) 
[GCC 7.3.0] :: Anaconda, Inc. on linux

The log

$ pip install image-quality
Collecting image-quality
  Using cached image_quality-1.2.5-py3-none-any.whl (146 kB)
Collecting libsvm>=3.23.0
  Using cached libsvm-3.23.0.4.tar.gz (170 kB)
Collecting scikit-image>=0.15.0
  Using cached scikit_image-0.17.2-cp37-cp37m-manylinux1_x86_64.whl (12.5 MB)
Requirement already satisfied: scipy>=1.3.0 in /home/peter/anaconda3/lib/python3.7/site-packages (from image-quality) (1.4.1)
Collecting numpy>=1.16.4
  Using cached numpy-1.18.5-cp37-cp37m-manylinux1_x86_64.whl (20.1 MB)
Requirement already satisfied: Pillow>=5.2.0 in /home/peter/anaconda3/lib/python3.7/site-packages (from image-quality) (5.4.1)
Collecting tifffile>=2019.7.26
  Using cached tifffile-2020.6.3-py3-none-any.whl (133 kB)
Requirement already satisfied: matplotlib!=3.0.0,>=2.0.0 in /home/peter/anaconda3/lib/python3.7/site-packages (from scikit-image>=0.15.0->image-quality) (3.2.1)
Requirement already satisfied: imageio>=2.3.0 in /home/peter/anaconda3/lib/python3.7/site-packages (from scikit-image>=0.15.0->image-quality) (2.5.0)
Requirement already satisfied: networkx>=2.0 in /home/peter/anaconda3/lib/python3.7/site-packages (from scikit-image>=0.15.0->image-quality) (2.4)
Collecting PyWavelets>=1.1.1
  Using cached PyWavelets-1.1.1-cp37-cp37m-manylinux1_x86_64.whl (4.4 MB)
Requirement already satisfied: kiwisolver>=1.0.1 in /home/peter/anaconda3/lib/python3.7/site-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image>=0.15.0->image-quality) (1.0.1)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /home/peter/anaconda3/lib/python3.7/site-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image>=0.15.0->image-quality) (2.3.1)
Requirement already satisfied: python-dateutil>=2.1 in /home/peter/anaconda3/lib/python3.7/site-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image>=0.15.0->image-quality) (2.8.0)
Requirement already satisfied: cycler>=0.10 in /home/peter/anaconda3/lib/python3.7/site-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image>=0.15.0->image-quality) (0.10.0)
Requirement already satisfied: decorator>=4.3.0 in /home/peter/anaconda3/lib/python3.7/site-packages (from networkx>=2.0->scikit-image>=0.15.0->image-quality) (4.4.0)
Requirement already satisfied: setuptools in /home/peter/anaconda3/lib/python3.7/site-packages (from kiwisolver>=1.0.1->matplotlib!=3.0.0,>=2.0.0->scikit-image>=0.15.0->image-quality) (46.4.0)
Requirement already satisfied: six>=1.5 in /home/peter/anaconda3/lib/python3.7/site-packages (from python-dateutil>=2.1->matplotlib!=3.0.0,>=2.0.0->scikit-image>=0.15.0->image-quality) (1.12.0)
Building wheels for collected packages: libsvm
  Building wheel for libsvm (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/peter/anaconda3/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4jycv_97/libsvm/setup.py'"'"'; __file__='"'"'/tmp/pip-install-4jycv_97/libsvm/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-8y0hn8b8
       cwd: /tmp/pip-install-4jycv_97/libsvm/
  Complete output (29 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.7
  creating build/lib.linux-x86_64-3.7/libsvm
  copying libsvm/__init__.py -> build/lib.linux-x86_64-3.7/libsvm
  copying libsvm/svmutil.py -> build/lib.linux-x86_64-3.7/libsvm
  copying libsvm/commonutil.py -> build/lib.linux-x86_64-3.7/libsvm
  copying libsvm/svm.py -> build/lib.linux-x86_64-3.7/libsvm
  running egg_info
  writing libsvm.egg-info/PKG-INFO
  writing dependency_links to libsvm.egg-info/dependency_links.txt
  writing requirements to libsvm.egg-info/requires.txt
  writing top-level names to libsvm.egg-info/top_level.txt
  reading manifest file 'libsvm.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'libsvm.egg-info/SOURCES.txt'
  creating build/lib.linux-x86_64-3.7/libsvm/bin
  creating build/lib.linux-x86_64-3.7/libsvm/bin/windows
  copying libsvm/bin/windows/libsvm.dll -> build/lib.linux-x86_64-3.7/libsvm/bin/windows
  running build_ext
  building 'libsvm' extension
  creating build/temp.linux-x86_64-3.7
  creating build/temp.linux-x86_64-3.7/src
  creating build/temp.linux-x86_64-3.7/src/libsvm
  gcc -pthread -B /home/peter/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/home/peter/anaconda3/include/python3.7m -c src/libsvm/svm.cpp -o build/temp.linux-x86_64-3.7/src/libsvm/svm.o
  gcc: error trying to exec 'cc1plus': execvp: No such file or directory
  error: command 'gcc' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for libsvm
  Running setup.py clean for libsvm
Failed to build libsvm
ERROR: tables 3.5.1 requires mock>=2.0, which is not installed.
ERROR: modin 0.6.1 has requirement pandas==0.25.1, but you'll have pandas 1.0.3 which is incompatible.
Installing collected packages: libsvm, numpy, tifffile, PyWavelets, scikit-image, image-quality
    Running setup.py install for libsvm ... error
    ERROR: Command errored out with exit status 1:
     command: /home/peter/anaconda3/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4jycv_97/libsvm/setup.py'"'"'; __file__='"'"'/tmp/pip-install-4jycv_97/libsvm/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-50q2uygc/install-record.txt --single-version-externally-managed --compile --install-headers /home/peter/anaconda3/include/python3.7m/libsvm
         cwd: /tmp/pip-install-4jycv_97/libsvm/
    Complete output (29 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.7
    creating build/lib.linux-x86_64-3.7/libsvm
    copying libsvm/__init__.py -> build/lib.linux-x86_64-3.7/libsvm
    copying libsvm/svmutil.py -> build/lib.linux-x86_64-3.7/libsvm
    copying libsvm/commonutil.py -> build/lib.linux-x86_64-3.7/libsvm
    copying libsvm/svm.py -> build/lib.linux-x86_64-3.7/libsvm
    running egg_info
    writing libsvm.egg-info/PKG-INFO
    writing dependency_links to libsvm.egg-info/dependency_links.txt
    writing requirements to libsvm.egg-info/requires.txt
    writing top-level names to libsvm.egg-info/top_level.txt
    reading manifest file 'libsvm.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    writing manifest file 'libsvm.egg-info/SOURCES.txt'
    creating build/lib.linux-x86_64-3.7/libsvm/bin
    creating build/lib.linux-x86_64-3.7/libsvm/bin/windows
    copying libsvm/bin/windows/libsvm.dll -> build/lib.linux-x86_64-3.7/libsvm/bin/windows
    running build_ext
    building 'libsvm' extension
    creating build/temp.linux-x86_64-3.7
    creating build/temp.linux-x86_64-3.7/src
    creating build/temp.linux-x86_64-3.7/src/libsvm
    gcc -pthread -B /home/peter/anaconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/home/peter/anaconda3/include/python3.7m -c src/libsvm/svm.cpp -o build/temp.linux-x86_64-3.7/src/libsvm/svm.o
    gcc: error trying to exec 'cc1plus': execvp: No such file or directory
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /home/peter/anaconda3/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4jycv_97/libsvm/setup.py'"'"'; __file__='"'"'/tmp/pip-install-4jycv_97/libsvm/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-50q2uygc/install-record.txt --single-version-externally-managed --compile --install-headers /home/peter/anaconda3/include/python3.7m/libsvm Check the logs for full command output.
Graygood commented 4 years ago

same here using Python 3.7.2

test1230-lab commented 4 years ago

Try pip3

ocampor commented 3 years ago

The Conda environments are not supported. However, you can install the package in a clean virtual environment if you follow these instructions:

conda deactivate
python3 -m venv venv
source venv/bin/activate
pip install image-quality

You can follow the rest of the instructions from the README.md.