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

Fails to build on Python 3.13 #615

Open
samcday opened this issue Jan 6, 2025 · 5 comments
Open

Fails to build on Python 3.13 #615

samcday opened this issue Jan 6, 2025 · 5 comments

Comments

@samcday
Copy link

samcday commented Jan 6, 2025

src/pylzma/pylzma.c: In function ‘PyInit_pylzma’:
src/pylzma/pylzma.c:296:5: warning: ‘PyEval_InitThreads’ is deprecated [-Wdeprecated-declarations]
  296 |     PyEval_InitThreads();
      |     ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/python3.13/Python.h:124,
                 from src/pylzma/pylzma.c:26:
/usr/include/python3.13/ceval.h:114:37: note: declared here
  114 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
      |                                     ^~~~~~~~~~~~~~~~~~
src/pylzma/pylzma_aes.c:158:5: error: initialization of ‘long int’ from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  158 |     NULL,                                /* printfunc  tp_print;   */
      |     ^~~~
src/pylzma/pylzma_aes.c:158:5: note: (near initialization for ‘CAESDecrypt_Type.tp_vectorcall_offset’)
error: Setup script exited with error: command '/usr/bin/gcc' failed with exit code 1

I encountered this on Fedora 41 which ships Python 3.13. It seems @abdedarghal111 also ran into this on Arch

@samcday
Copy link
Author

samcday commented Jan 6, 2025

Seems like pylzma is quite inactive. A kind soul on that project's issue tracker suggested a fix which worked for me:

sudo CFLAGS=-Wno-int-conversion python3 setup.py install

@rcky844
Copy link

rcky844 commented Jan 13, 2025

I just tried it on Python 3.13, and it seems broken with that.

@samcday
Copy link
Author

samcday commented Jan 13, 2025

Did you try the workaround I posted in the previous comment? I successfully built and used edl from source last week with Python 3.13.1 (Fedora 41 distro package) with that One Weird Trick 🤷

@rcky844
Copy link

rcky844 commented Jan 14, 2025

Did you try the workaround I posted in the previous comment? I successfully built and used edl from source last week with Python 3.13.1 (Fedora 41 distro package) with that One Weird Trick 🤷

I found out that my board's EMMC died, and it seems unrelated to edl.
And no, I did not need your workaround to build at all on Arch Linux.

@RenateUSB
Copy link

If the eMMC actually failed you should be able to ascertain that by using EDL. Just run it verbose and get the 532 extended CSD bytes.

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

No branches or pull requests

3 participants