ParallelSSH / ssh2-python

Python bindings for libssh2 C library.
https://parallel-ssh.org
GNU Lesser General Public License v2.1
228 stars 70 forks source link

Fails to build on Python 3.11 - longintrepr.h: No such file or directory #174

Closed ogajduse closed 1 year ago

ogajduse commented 2 years ago

Bug report

Steps to reproduce:

1, dnf install python3.11-devel

  1. mkvirtualenv ssh2-python-py311 --py 3.11 && workon ssh2-python-py311
  2. pip install ssh2-python

Expected behaviour: ssh2-python should be installable on Python 3.11

Actual behaviour: Installation does not succeed, gcc throws an error.

Additional info: ssh2-python-0.27.0 python3.11-devel-3.11.0~b3-1.fc35.x86_64 cmake-3.22.2-1.fc35.x86_64 gcc (GCC) 11.2.1 20211203 (Red Hat 11.2.1-7)

Seems that not only this package is affected by this issue, see https://github.com/aio-libs/aiohttp/issues/6600

Log snippet

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_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_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 -fPIC -Ilibssh2/include -I/home/ogajduse/.virtualenvs/ssh2-python-py311/include -I/usr/include/python3.11 -c ssh2/ext/find_eol.c -o build/temp.linux-x86_64-3.11/ssh2/ext/find_eol.o -O2
    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_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_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 -fPIC -Ilibssh2/include -I/home/ogajduse/.virtualenvs/ssh2-python-py311/include -I/usr/include/python3.11 -c ssh2/utils.c -o build/temp.linux-x86_64-3.11/ssh2/utils.o -O2
    ssh2/utils.c:198:12: fatal error: longintrepr.h: No such file or directory
      198 |   #include "longintrepr.h"
          |            ^~~~~~~~~~~~~~~
    compilation terminated.
    error: command '/usr/bin/gcc' failed with exit code 1
pkittenis commented 1 year ago

Hi there,

Thanks for the interest and report.

Development versions of Python are not supported. Support will be offered once 3.11 is released.