Orekit python wrapper on Mac M2

Hi all,

Just wondering if there’s been any updates on getting a MacOS (apple silicon) version of the python wrapper working. I don’t see a version in conda-forge and am wondering if it’s just not available on the new mac hardware or if i’m missing something along the way.

thanks!
–joe

Hi Joe,

Unfortionately there is still no conda version of orekit, this is on my to-investigate-list but it seems from my initial tests quite complex and I don’t have a mac to test with so every iteration takes about 20 mins to build :slight_smile:

Some more on why this is complex is in the thread: Orekit Python Wrapper 11.3.2 released - #6 by petrus.hyvonen

What is doable as a fix meanwhile is to use the alternative wrapper based on jpype, it has been confirmed to work on mac platform: Files · master · Petrus Hyvönen / orekit_jpype · GitLab

Hi,

I might have it working, but don’t have a M1/M2 Mac to test on. Could someone please test the package that is on conda-forge (shoudl be there in about 1 hour)?

BR

Hi @petrus.hyvonen,

I am trying to install Orekit 11.3.2 but my micromamba only finds a Python 3.8 version. On the conda repo I see that there are arm64 builds for all versions, but only a 3.8 for 64. Is that the problem? The Mac is not super recent.

Cheers,
Romain.

Hi @Serrof , yes that is correct, the osx build is still struggling for versions above python 3.8, was trying some stuff today but still not working, it is related to the build pipeline I think and it may build if you would run conda build directly on your machine. The 3.8 version is latest however.

Oddly the M1/M2 is cross compiled on a osx (x86) as there are no arm VM’s in the build infrastructure, and they seem to build.cannot yet verify that they are working as expected though but seems to import.

I see, well I’ve tried installing and running Orekit 11.3.2 on Python 3.8 and it works. Thank you @petrus.hyvonen! I would prefer the latest version of Python of course, but no pressure :wink:

Hi everyone, I’ve run into this as well. Our simulator is based on orekit 11.3 and python 3.11; the environment builds okay on PC and Linux, but failed on MacOS with:

╰─ conda env create -f dev/envs/development.yml                              ─╯
/opt/miniconda3/lib/python3.12/argparse.py:2006: FutureWarning: `remote_definition` is deprecated and will be removed in 25.9. Use `conda env create --file=URL` instead.
  action(self, namespace, argument_values, option_string)
Retrieving notices: ...working... done
Channels:
 - anaconda
 - conda-forge
 - defaults
Platform: osx-64
Collecting package metadata (repodata.json): done
Solving environment: failed
Channels:
 - anaconda
 - conda-forge
 - defaults
Platform: osx-64
Collecting package metadata (repodata.json): done
Solving environment: failed

LibMambaUnsatisfiableError: Encountered problems while solving:
  - nothing provides openssl >=1.1.1,<1.1.2.0a0 needed by python-3.6.7-haf84260_0

Could not solve for environment specs
The following packages are incompatible
├─ orekit 11**  is installable with the potential options
│  ├─ orekit 11.0 would require
│  │  ├─ python >=3.6,<3.7.0a0  with the potential options
│  │  │  ├─ python [3.6.0|3.6.1|...|3.6.9], which can be installed;
│  │  │  └─ python [3.6.7|3.7.1] would require
│  │  │     └─ openssl >=1.1.1,<1.1.2.0a0 , which does not exist (perhaps a missing channel);
│  │  └─ python_abi 3.6.* *_cp36m, which can be installed;
│  ├─ orekit [11.0|11.0.1|11.0.2|11.1|11.2] would require
│  │  ├─ python >=3.7,<3.8.0a0  with the potential options
│  │  │  ├─ python [3.6.7|3.7.1], which cannot be installed (as previously explained);
│  │  │  └─ python [3.7.0|3.7.1|...|3.7.9], which can be installed;
│  │  └─ python_abi 3.7.* *_cp37m, which can be installed;
│  ├─ orekit [11.0|11.0.1|...|11.3.3] would require
│  │  ├─ python >=3.8,<3.9.0a0 , which can be installed;
│  │  └─ python_abi 3.8.* *_cp38, which can be installed;
│  ├─ orekit [11.0|11.0.1|11.0.2|11.1|11.2] would require
│  │  ├─ python >=3.9,<3.10.0a0 , which can be installed;
│  │  └─ python_abi 3.9.* *_cp39, which can be installed;
│  └─ orekit [11.0.2|11.1|11.2] would require
│     ├─ python >=3.10,<3.11.0a0 , which can be installed;
│     └─ python_abi 3.10.* *_cp310, which can be installed;
└─ python 3.11**  is not installable because there are no viable options
   ├─ python [3.11.0|3.11.10|...|3.11.9] conflicts with any installable versions previously reported;
   └─ python [3.11.0|3.11.1|...|3.11.9] would require
      └─ python_abi 3.11.* *_cp311, which conflicts with any installable versions previously reported.

It looks like orekit 11.2 supports up to python 3.10, but orekit 11.3 only goes up to python 3.9; is that correct?