-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
fix python wheel packages (312, 313) #6430
base: master
Are you sure you want to change the base?
Conversation
- python312-wheels and python313-wheels did not include gcc version dependent wheels - TC_GCC version checks must be used after include of spksrc.python.mk (or spksrc.spk.mk) to work
@th0ma7 I am unsure wheter this fix really works, due to the comment you added at the bottom of the Makefile(s)
|
I mentioned my issue with numpy but finally found, that
|
@th0ma7 if we must define all requirements files in What is the reason for the comment above and why not in python311-wheels? |
as expected, all packages with numpy failed My local builds have the error
Details for
but the github build has different error (and has additionally log since CI build is detected)
|
finally github build shows the same error for numpy==1.26.4 as my local build:
|
This means that if |
Looking quickly at the container image it does have an older cython version matching your output:
Further investigating... the spksrc generated |
TL;DR (short version)@hgy59 we need to distinguish long versionBeen doing some more reading and I may have gotten this wrong all along... been learning as i go on this whole crossenv thing and something stood out tonight. prerequisites: When creating our crossenv, dating from prior to me afaik, we've always been installing all "environmental" wheels in both:
This is where we got it wrong: I recall when I added maturin (as mandatory requirement for many wheels), I ended up adding it everywhere (i.e. To recap:
This leaves Then, only mandatory python "dependency" required by the code we're building needs to be part of our With this in mind, our dynamic crossenv requirement definition files should probably look more like this (I did not look into details nor tested any of that):
Lastly, why is this working currently? because we cover most usecases with native maturin and common dependencies available in cross. But any "complex" wheel has good chances to fail, such as numpy. Good news are:
|
Been thinking this a bit more, a temporary quick fix could be to add the removal of maturin and unneeded wheels from crossenv/cross and readjust PATH. This could save time until a more complete fix is built under spksrc.crossenv.mk ... |
Description
Fixes #
Checklist
all-supported
completed successfullyType of change