openshift-eng/elliott

Unable to install on Fedora 37 due to incompatible version of `libgit2`

rm3l opened this issue · 1 comments

rm3l commented

I tried to install elliott using pip install rh-elliott (as mentioned in the README), but it first errored out due to missing git2.h when building pygit2.
After installing libgit2-devel, the command errored out again with a different error:

      generating cffi module 'build/temp.linux-x86_64-cpython-311/pygit2._libgit2.c'                                                                                                                                
      creating build/temp.linux-x86_64-cpython-311                                                                                                                                                                  
      building 'pygit2._pygit2' extension                                                                                                                                                                           
      creating build/temp.linux-x86_64-cpython-311/src                                                                                                                                                              
      gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-
strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FO
RTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord
-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protecti
on -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/local/include -I/usr/include/python3.11 -c src/blob.c -o build/temp.linux-x86_64-cpython-311/src/blob.o                                                                 
      In file included from src/blob.h:34,                                                                                                                                                                          
                       from src/blob.c:30:                                                                                                                                                                          
      src/types.h:36:2: error: #error You need a compatible libgit2 version (1.1.x)                                                                                                                                 
         36 | #error You need a compatible libgit2 version (1.1.x)                                                                                                                                                  
            |  ^~~~~                                                                                                                                                                                                
      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 pygit2                                                                                                                                                                           
Failed to build pygit2                                                                                                                                                                                              
ERROR: Could not build wheels for pygit2, which is required to install pyproject.toml-based projects

Indeed, the version of libgit2-devel is currently 1.3.1: https://pkgs.org/download/libgit2-devel

I ended up installing the development version of elliott by running pip install git+https://github.com/openshift/elliott@master, but thought I'd let you know.

right, we haven't updated the source on PyPI for some time, the version is really out of date there. We recommend using the master directly