Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pycrypto dependency breaks install on Python >= 3.11 #90

Open
kroq-gar78 opened this issue Sep 21, 2024 · 0 comments · May be fixed by #91
Open

pycrypto dependency breaks install on Python >= 3.11 #90

kroq-gar78 opened this issue Sep 21, 2024 · 0 comments · May be fixed by #91

Comments

@kroq-gar78
Copy link

kroq-gar78 commented Sep 21, 2024

This fails in a fresh Docker python:3.12-bookworm container (with similar errors in 3.11-bookworm):

$ docker run -it --rm python:3.12-bookworm pip3 install cottoncandy

[...]

Building wheels for collected packages: pycrypto, PyDrive
  Building wheel for pycrypto (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for pycrypto (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [71 lines of output]
      [...]
      config.status: creating src/config.h
      In file included from /usr/local/include/python3.12/Python.h:87,
                       from src/_fastmath.c:31:
      /usr/local/include/python3.12/cpython/pytime.h:216:60: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
        216 | PyAPI_FUNC(int) _PyTime_FromTimespec(_PyTime_t *tp, struct timespec *ts);
            |                                                            ^~~~~~~~
      /usr/local/include/python3.12/cpython/pytime.h:221:56: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
        221 | PyAPI_FUNC(int) _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts);
            |                                                        ^~~~~~~~
      /usr/local/include/python3.12/cpython/pytime.h:225:63: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
        225 | PyAPI_FUNC(void) _PyTime_AsTimespec_clamp(_PyTime_t t, struct timespec *ts);
            |                                                               ^~~~~~~~
      src/_fastmath.c:33:10: fatal error: longintrepr.h: No such file or directory
         33 | #include <longintrepr.h>                                /* for conversions */
            |          ^~~~~~~~~~~~~~~
      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 pycrypto
  
  [...]

PyCrypto's homepage says the package has been unmaintained since 2013 and recommends PyCryptodome as a mostly drop-in replacement.

@kroq-gar78 kroq-gar78 linked a pull request Sep 21, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant