Closed akamensky closed 3 years ago
I have only compiled binaries for x86-64 (windows, mac and linux). If you want to run on ARM Linux you will need to compile yourself.
@electronstudio then please do put appropriate arch tag on your builds. Otherwise it assumes it is "noarch" and allows me to install those on arm64, which it should not allow in that case.
Still a bug.
Feel free to submit a PR to fix it.
I don't see anything relating to automatic builds/pypi uploads in this repo, I presume this is done elsewhere or manually.
In short -- these arch tags are defined in wheel file that is uploaded to pypi repos.
Compare yours: https://pypi.org/project/raylib/#files (filename: raylib-2.6.0-py3-none-any.whl) note any
suffix which tells that this package contains NO binary deps that are platform/arch dependent.
With for example CFFI: https://pypi.org/project/cffi/#files (filename: cffi-1.14.4-cp35-cp35m-manylinux1_x86_64.whl) note manylinux1_x86_64
suffix which tells that package contains files that are binary compatible with only Linux/x86_64.
It's been a year since I looked at this so I can't remember how it's done! Guess we should add a script to do releases, and make a release for 3.5.
ideally we would get pip to automatically compile a binary if one is not present but i couldnt figure out how to do that.
OK I can't actually do a release for Raylib 3.5 because 3.5 doesn't compile. Oh Raylib.... Guess will have to do a release from git master.
Updated to build with Raylib 3.5 and wrote instructions: https://github.com/electronstudio/raylib-python-cffi#build-from-source
In fact there is is a script included to build the wheel, invoke like this:
python3 setup.py bdist_wheel
So that's the script to edit to get the wheel to be architecture specific. I think I managed to get it to produce platform specific wheels before but the problem is we support about 20 different platforms so I just went with 'any' to get a single wheel that worked on (almost) all systems.
I am not saying it has to provide support for all different architectures (though would be nice of course). But it should not successfully install if it is not going to work due to arch not being supported.
Well, I don't manually enter the file names, they are generated by setup.py
so that's the file you need to fix if you want to fix this bug.
I will close this issue split it into sub tasks so it's clearer what is required if anyone wants to take it on.
https://github.com/electronstudio/raylib-python-cffi/issues/25 https://github.com/electronstudio/raylib-python-cffi/issues/26
Env:
Setup:
test.py is contents from README in this repo for raylib.static: