-
Notifications
You must be signed in to change notification settings - Fork 852
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
Build a binary for Apple Silicon #2
Comments
I don't want to open another duplicate but I do want to add another request for Apple Silicon binaries, please! Is there an ETA for this issue? |
We have a working (and performant) universal binary build for macOS and have repackaged our macOS release into a proper Framework Bundle, meaning that people will be able to use it more easily in Xcode projects (including Swift ones). We are now working through our internal release process and intend to make the new build available within the next few weeks. |
Thanks a lot! |
Excited to hear the great news of the 2.1.1 release! Given that MuJoCo is provided as a framework bundle, which is different from what we used to have before (i.e. UPDATE: The file layout has changed a lot, so any downstream bindings would need a significant update (even for linux x86_64). However, it will be good to provide a canonical, official way of installing the distribution (for example, moving |
This issue is about mujoco-py, which isn't a project that we own or maintain. Having said that, since MuJoCo 2.1.1 doesn't change any public API compared to 2.1.0 we expect existing bindings to continue to work modulo changes in file names and location. For dm_control, we will very shortly be pushing a small change that fixes the load path for MuJoCo and provide updated installation instructions. For mujoco-py, if the maintainers would like to update their code we'd be more than happy to work with them on it. In the meantime, I suggest that you mount the DMG for 2.1.1 then try the following: mkdir -p ~/.mujoco/mujoco210/bin
cp /Volumes/MuJoCo/MuJoCo.framework/Versions/Current/libmujoco.2.1.1.dylib ~/.mujoco/mujoco210/bin/libmujoco210.dylib
cp -r /Volumes/MuJoCo/MuJoCo.framework/Versions/Current/Headers ~/.mujoco/mujoco210/include Let us know if you get anywhere with this! |
@saran-t Yes I know my question is a bit off-topic. However, I think it's still worth considering having a canonical/standard installation path so that downstream applications can detect the lib properly, and in regard to that my point is mainly about installation process and relevant documentation. Do you expect users to use MuJoCo where the image is being mounted (which is not permanent)? Why don't we have MuJoCo.framework installed somewhere into the system? We could consider providing an installer, but I think simply letting |
This is our proposed installation scheme for Note that this is likely a somewhat temporary solution while we work out proper installation setup (we're considering msi for Windows, deb/rpm for Linux, and possibly pkg for macOS). |
I have submitted a pull request for openai/mujoco-py that adds support for Xcode clang and uses the new MuJoCo.framework: |
I am running through simulate.swift (my port of simulate.cc) with address sanitizer to discover related bugs. Besides ones in my port, there are two in MuJoCo: 1. in maketext, the logic to find . is not protected against j is less than 0 (due to the decreasing logic above), creating out of bound access. 2. in mj_printFormattedData, qfrc_applied should use length nv not nq, otherwise out of bound access could be triggered. Test Plan: Run through the simulate.cc with asan. Before this fix, when presenting profiler view, it will trigger bug google-deepmind#1. When print data, it will trigger bug google-deepmind#2. Both are using model/humanoid/22_humanoids.xml.
MacOS binary releases should also be available for Apple Silicon machines.
The text was updated successfully, but these errors were encountered: