Edit:
I’ve also tried bypassing this make build-python step with sudo pip3 install . --break-system-packages but the same stumbling block appears, “Imaging.h”.
I haven’t tried that.
Instead, after posting this topic, I tried following this topic and after installing missing things, stumbling through, and crossing my fingers, I got things working.
to both of you, first get the latest version of the source which includes
Once you have done that, if you are pretty confident that there is a problem with the python support that is not on your side, you can file a new issue and once you have, please mark it as blocking this bug:
I’m getting the same imaging.h error over here. Removing ‘rgbmatrix/shims/pillow.c’ from the sources array as @deadlift89 mentioned seems to fix it, but no idea what that might be breaking downstream.
distutils should have been removed months ago, we will have to dig into how this was reverted. There’s no need to support it any longer as it was deprecated over 5 years ago.
Regarding the imaging header: it should be one of the system Pillow image headers. It’s possible Pillow is not installed or located somewhere the script doesn’t expect.
Yes, I’m aware Python 3.11 requires either a venv or --break-system-packages. I don’t think that should matter as Pillow is installed in the system Python that ships with the OS which should pick up this header. This project is using the system Pillow install which is why I recommended installing via apt and not pip install Pillow which would definitely break.
I’m suggesting installing via apt and not pip. apt does not have anything to do with pip’s --break-system-packages flag
This error is in a C shim, so it has no context for any Python specific environment variables. When I wrote the shim, I tested it against a system Pillow installation which did not need an include flag (-I) during compilation. But it’s possible my setup differed from others leading to this problem.
Perfect, thanks for confirming. Short term we can add that to the build instructions but I agree, it should be automated. Would you like to create an issue to track this?
thanks for filing the issue (which I saw before this discussion). Hopefully one of the users who also use python bindings may be able to help, but keep in mind none of them are official devs for this lib any more than I am, so please be understanding if it takes a bit of time.