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

Add a hacky patch so that Z3 on M1 hardware can link to libs properly #5974

Merged
merged 2 commits into from
Apr 15, 2022

Conversation

zwimer
Copy link
Contributor

@zwimer zwimer commented Apr 12, 2022

This is a hacky patch which should ease the effect of: #5926

This is not a fix, it is a hacky patch. It should allow pip installed z3 to be linked to on M1 and unknown hardware (on both macOS and Linux). This will not necessarily work for all situations, but should work for some. It simply creates symlinks to pretend the library is named differently, to match the invalid SONAME in the library header.

@NikolajBjorner
Copy link
Contributor

Can you also try the arm64 wheel on the nightly build? I hope I got the package path conventions right so that we can just distribute native ARM64 for the growing base on M1 users.

@NikolajBjorner
Copy link
Contributor

I will hold off on merging this until a second set of eyes (if possible, @rhelmot) agree or I get to double check

@zwimer
Copy link
Contributor Author

zwimer commented Apr 13, 2022

@NikolajBjorner Where would I find the nightly wheels? If you can point me to them I can test them. If those work, (and the bug does not appear) this PR can be ignored.

@rhelmot
Copy link
Collaborator

rhelmot commented Apr 15, 2022

This is a fine change so far as hacky patches go, the only thing I want to see changed is that the windows case shouldn't use a return, since if someone adds code after the symlink they may expect it'll be run on windows.

@NikolajBjorner NikolajBjorner merged commit 7d47e45 into Z3Prover:master Apr 15, 2022
@zwimer
Copy link
Contributor Author

zwimer commented Apr 18, 2022

@NikolajBjorner With the merge of this PR, would it be possible to create a new pip release?

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

Successfully merging this pull request may close these issues.

3 participants