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

Any plans to publish macos universal2 wheels? #287

Closed
carlos-villavicencio-adsk opened this issue Feb 21, 2024 · 3 comments
Closed

Any plans to publish macos universal2 wheels? #287

carlos-villavicencio-adsk opened this issue Feb 21, 2024 · 3 comments
Labels

Comments

@carlos-villavicencio-adsk
Copy link

carlos-villavicencio-adsk commented Feb 21, 2024

BUG/PROBLEM REPORT / FEATURE REQUEST

I'm currently working on a desktop project that bundles zope.interface. We're doing the required changes to run natively on Apple Silicon processors.

By inspecting the installed files I realized that _zope_interface_coptimizations.cpython-310-darwin.so architecture is only x86_64.

So, as the title says, are there any plans to publish universal2 wheels? Can you recommend any workaround?

What I did:

On a macos intel computer:

$ pip install zope.interface==5.5.2

Then build and package my application.

On a macos apple silicon computer:

$ lipo -archs path/to/zope/interface/_zope_interface_coptimizations.cpython-310-darwin.so

What I expect to happen:

x86_64 arm64

What actually happened:

x86_64

What version of Python and Zope/Addons I am using:

  • MacOS 12 Intel (build machine)
  • MacOS 14 M1 (client machine)
  • Python 3.10.13
  • zope.interface==5.5.2
@icemac
Copy link
Member

icemac commented Feb 22, 2024

@carlos-villavicencio-adsk Thank you for your report.

You are using a really old version of zope.interface.

With the current release I get on M2 for Python 3.11:

$ bin/pip install zope.interface==6.2
Successfully installed zope.interface-6.2
$ lipo -archs lib/python3.11/site-packages/zope/interface/_zope_interface_coptimizations.cpython-311-darwin.so
arm64

universal2 have build and package selection issues. So we decided to have separate ones for x86 and arm.

Does this answer your question?

@carlos-villavicencio-adsk
Copy link
Author

Yes, thanks.

I was able to fix this by combining the two so binaries (x86_64 and arm64) into a fat one using the lipo tool. Now I got it working as expected.

@icemac
Copy link
Member

icemac commented Feb 23, 2024

Nice to hear, so I am closing this issue now.

@icemac icemac closed this as not planned Won't fix, can't repro, duplicate, stale Feb 23, 2024
@icemac icemac added invalid and removed question labels Feb 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants