-
-
Notifications
You must be signed in to change notification settings - Fork 5k
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
BUG: MacOS universal2 wheels have two gfortran shared libraries, which trips up PyInstaller #15552
Comments
I'm also experiencing this (example github actions run). |
Hi @danielhrisca, thank you for reporting. I am not familiar with We added two external C-submodules UNU.RAN and PROPACK. That could be linked. |
pyinstaller just bundles the python interpreter + libraries into a distributable package. It looks at the imports and sees what libraries are necessary, then copies the library from the In this case I think that the macos scipy wheel for x86_64 contains the shared libray |
Ah ok, I see. The wheels are created on another repo. cc @tylerjereddy Here is the relevant CI files Maybe a bug in the logic when we specify |
As you can see here only Python 3.9 fails. Python 3.7, 3.8 and 3.10 are ok |
Ah, that would be bad. Are you sure though? That would mean that the wheel would be broken for regular use on Can someone with an Intel Mac confirm where the Python 3.9 wheels is importable and passes its tests ( |
I have an Intel Mac. I created a Python 3.9.10 conda env and installed scipy:
I then ran:
The tests pass:
I then went into the
There are two libgfortrans, one that's targeting x86_64, and one targeting arm64. |
So the original error message is technically correct, there is an arm64 dylib (actually libgcc_2 as well) present in the wheel, but its presence has no effect when in a normal interpreter. Perhaps @matthew-brett might be able to shed light, because it might be something to do with delocate? |
I note that there is a dedicated Intel wheel,
@danielhrisca, can I recommend that if you want to use scipy in a PyInstaller bundle that you use the |
Thanks for that detailed analysis @andyfaff! That all looks correct, at least in the sense that all the architectures one expects and no extra ones are present for both
@isuruf implemented this Right now it looks like the only reason we have |
@danielhrisca do you really need to build a universal application, or would you be fine building separate Intel and arm64 installers for your users? |
This is actually a duplicate with gh-15539, where these issues were discussed and resolved. PyInstaller issue is on their side it looks like from that conversation. So I'll close this issue.
This question is still of interest. |
It was not my intention to create an universal application, just to run the build on a macos VM. I guess I'll follow the other issue for a solution. Thanks |
Okay thanks @danielhrisca. No idea what Tox is doing there then. |
For those who will get here through Google, etc:
https://github.com/pyinstaller/pyinstaller/releases/tag/v4.10 |
Thank you for the info, I will try it out |
Describe your issue.
Starting with release 1.8.0 there seems to be a mismatch of shared libraries. Please see the failure message on this github actions job:
https://github.com/danielhrisca/asammdf/runs/5109724435?check_suite_focus=true
Reproducing Code Example
Error message
SciPy/NumPy/Python version information
1.8.0 1.22.2 CPython 3.9.10 on macOS-10.16-x86_64-i386-64bit
The text was updated successfully, but these errors were encountered: