Starting with OpenSim version 4.4, we provide conda packages to support development in python+conda environment. There are two packages:
- 'opensim' which includes functionality in OpenSim 4.4 but without Moco (to avoid potential collision with other packages)
- 'opensim-moco' which includes Moco functionality
Both packages are built with variants for different python versions (3.7, 3.8, 3.9) and numpy version 1.20, with other dependencies included (simbody, ezc3d). The list of conda packages will grow as community needs evolve over time and as new variants are published. The one line installer:
> conda install -c opensim-org opensim
Issues to keep in mind:
There're a couple issues that you need to know about regarding conda packaging:
- The conda package is self contained, has no connection to any other OpenSim distribution including the OpenSim application.
- Conda packages are built for specific python version, indicated by the package name (e.g. opensim-4.4-py39np120) suggests a package built for python version 3.9 and using numpy version 1.20. Conda independently tries to locate the correct package for your environment, and prompts users before installation, please double check the suggested package to make sure it matches your environment/expectations.
- Conda has a base environment but allows creation of environments with different python versions, it is less likely to have problems if you install the opensim package in the base environment so you have access to it in other created environments. This is to be understood as a troubleshooting method especially if you have other installations of opensim on your machine. Once sorted out you should remove opensim from the base environment and install only in custom environments as needed.
- Python changed how libraries are loaded on windows in version 3.8 so that PATH is not used to locate libraries, accordingly different instructions apply in these scenarios.
Troubleshooting:
- We rely on conda to download the correct version for your environment/python-version. This however is not always true since conda also has to resolve dependencies and make arbitrary decisions. Keep an eye if your python version is the same as the one indicated by the package name (e.g. 3.9 for opensim-4.4-py39np120) if not the case, create a separate environment with the specific python version and install opensim into it. The common symptom of this incorrect behavior is failing to load simbody DLL on windows.