hannorein / rebound

💫 An open-source multi-purpose N-body code.
https://rebound.readthedocs.io/
GNU General Public License v3.0
820 stars 217 forks source link

conda forge ARM-64 version of rebound for mac OS #716

Closed mschwamb closed 9 months ago

mschwamb commented 10 months ago

I'm trying to install rebound on my M2 mac. I'm finding there's an ARM-64 version of rebound on pypy but not a conda-forge version. Is it possible to push a ARM-64 version of rebound for mac OS onto conda-forge? Thanks!

hannorein commented 10 months ago

I'm not a conda person so I don't know what this involves... Does pip not work with conda?

hannorein commented 10 months ago

(I'm not sure why you think there is an ARM-64 version of rebound on pypy. It should only be a source distribution.)

Francyrad commented 10 months ago

With pip install works fine

hannorein commented 10 months ago

Thanks. Glad to hear it works with pip. Someone needs to explain conda to me at some point. I'm always so confused!

mjuric commented 10 months ago

Hi all -- I've got a PR on the conda-forge feedstock that should flip the right switches to enable their machinery to build a native Apple Silicon binary. Looks like the tests pass, take a look when you get a chance.

(n.b., after this is merged it'd be fun to do a performance comparison of emulated vs. native Apple builds).

hannorein commented 10 months ago

Thank you! I've merged the PR. @mschwamb, let us know if it works!

pearsonkyle commented 10 months ago

@hannorein

I can confirm that the installation on conda forge works using: conda install -c conda-forge rebound

where as the pip install still did not work on a mac M2 Pro

mjuric commented 10 months ago

Just to confirm I only fixed the conda packaging (this specific issue); don't have as much experience with pypi/wheels, I'm afraid.

hannorein commented 9 months ago

There are now arm64 and x86 wheels of REBOUND available on PyPI. So you should be able to install REBOUND in your conda environment by simply using pip install rebound. REBOUND has no dependencies so I don't see any downside to using pip over a conda package.