Python · MuJoCo | MuJoCo 与 mujoco_py 的版本对应,以及安装 Cython<3
0 系统环境 & 需求
- 环境:Linux Ubuntu 20.04,Cuda 12.2(?)也可能是 11,我不是很清楚驱动版本…
- 需求:安装 gym、dm_control、MuJoCo 和 mujoco_py。
- 参考博客:知乎 | Mujoco & Mujoco-py 安装教程以及常见报错解决方法 (非常感谢♀️)
1 各版本 MuJoCo 的安装
下载 MuJoCo:
- MuJoCo 210:下载链接 ,会直接下载一个压缩包;
- MuJoCo 200:https://roboti.us/download.html ,点进去寻找对应的版本,下载压缩包;
- mjpro 150:https://roboti.us/download.html ,点进去寻找对应的版本,下载压缩包。
安装 MuJoCo:
- 在 ~/ 目录下建一个 .mujoco 文件夹,把刚刚下载的压缩包解压在 .mujoco 文件夹里,解压到比如 ~/.mujoco/mujoco210 或 ~/.mujoco/mujoco200 的路径下。
- MuJoCo 200 和 mjpro 150 所需要的 license(即 mjkey.txt):点进 https://roboti.us/license.html 里下载,或 下载链接 。下载完成后,放到 ~/.mujoco/mjkey.txt 的位置,或 ~/.mujoco/mujoco200/bin/mjkey.txt 的位置(记不清是哪个位置了,所以都放了一份)
设置环境变量(对于 MuJoCo 210 和 200):在 ~/.bashrc 里添加如下内容,并 source ~/.bashrc :
# ================== mujoco ==================
export MUJOCO_PY_MUJOCO_PATH=~/.mujoco/mujoco200 # 200
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/.mujoco/mujoco200/bin # 200
# export MUJOCO_PY_MUJOCO_PATH=~/.mujoco/mujoco210 # 210
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/.mujoco/mujoco210/bin # 210
export MUJOCO_GL=egl
# ================== mujoco ==================
# 忘记下面三行的作用了,但可能跟 MuJoCo 有点关系
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/nvidia
export PATH="$LD_LIBRARY_PATH:$PATH"
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libGLEW.so >> ~/.bashrc
2 MuJoCo 与 mujoco_py 的版本对应(参考知乎博客)
- MuJoCo 210:pip install mujoco_py==2.1.2.14
- MuJoCo 200:pip install mujoco_py==2.0.2.8
- mjpro 150:pip install mujoco_py==1.50.1.68
(亲测这样装下来,MuJoCo 210 和 MuJoCo 200 都是正常的)
(测试方法:在 python 里 import gym,env = gym.make("Hopper-v3"),测试一下 hopper 环境,再 import mujoco_py、import dm_control)
3 Cython 编译报错
具体错误:
- 好像是这个文件报错:/mujoco-py/mujoco_py/cymj.pyx
- 参考 issue:https://github.com/openai/mujoco-py/issues/773
解决方法:需要安装低版本 Cython,pip install "Cython<3" 。
Python · MuJoCo | MuJoCo 与 mujoco_py 的版本对应,以及安装 Cython<3的更多相关文章
- Python包管理工具和多版本环境管理
1. Python包管理工具 在安装Python包的过程中,经常涉及到distutils.setuptools.distribute.setup.py.easy_install.easy_instal ...
- python - selenium 2 升级到最新版本
python - selenium 2 升级到最新版本 之前一直用的是selenium 2.48 .firefox36 而实际用户的浏览器可能都有自动更新功能,所以版本基本上是最新的.所以这次专门做了 ...
- Python在windows平台的多版本配置
Python在windows平台的多版本配置 快速阅读: python在windows平台的环境变量以及多版本配置 ,以及pycharm如何安装包,以及安装包出错时如何排查. 1.python环境 ...
- Selenium2+python自动化2.7-火狐44版本环境搭建(转)
转载地址:https://www.cnblogs.com/yoyoketang/p/selenium.html 前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以 ...
- python 版本及pip安装相关
python2与python3 由于历史原因,Python有两个大的版本分支,Python2和Python3,又由于一些库只支持某个版本分支,所以需要在电脑上同时安装Python2和Python3,因 ...
- python改成了python3的版本,那么这时候yum就出问题了
既然把默认python改成了python3的版本,那么这时候yum就出问题了,因为yum貌似不支持python3,开发了这个命令的老哥也不打算继续写支持python3的版本了,所以,如果和python ...
- windows下多个python版本共存 及安装Django
了解python的人都知道python有2.x版本和3.x版本,而python3.x版本不向下兼容,但是根据具体的需要,有时候要2.x和3.x共存,python共存本身没有问题,只是需要设置一些环境变 ...
- 浅析py-faster-rcnn中不同版本caffe的安装及其对应不同版本cudnn的解决方案
浅析py-faster-rcnn中不同版本caffe的安装及其对应不同版本cudnn的解决方案 本文是截止目前为止最强攻略,按照本文方法基本可以无压力应对caffe和Ross B. Girshick的 ...
- [笔记]我的Linux入门之路 - 05.Eclipse的Python开发环境搭建与Numpy、Scipy库安装
一.Python环境 直接终端查询下python安装没:python --version Python 2.7.12 Ubuntu竟然已经装了Python2.7,那就好说了.不然自己装和装jdk差不多 ...
- Python学习之一:Python2.7与opencv2.4安装配置
安装前准备: 1.确定所安装的电脑是32位还是64位系统:(作者电脑是64bit win10) 2.下载对应的安装包: (1)下载最新Python安装包:https://www.python.org/ ...
随机推荐
- 记录一个vscode无法ssh树莓派,但是mobaxterm可以ssh登录的问题
一.为什么会遇到这个问题 帮别人开发一个树莓派小车的时候,买了一个新的树莓派3B,回来安装好桌面系统之后开启了ssh功能,便想开始使用vscode来ssh开发,省的后续一直要插着屏幕开发,很麻烦.但是 ...
- 记录java接口自动化模板优化
项目路径说明 内容优化 优化内容 1.自动生成的测试报告集成至项目中,可直接通过项目访问测试报告(之前生成测试报告位于项目外,需要手动打开) 优化效果: 2.后续会增加allure测试报告集成使用(实 ...
- 盘点阿里、腾讯、百度大厂C#开源项目
BAT作为互联网第一梯队的互联网公司,他们开源的项目都是发自内心地将踩过的坑和总结的经验融入到开源项目中,供业界所有人使用,希望帮助他人解决问题. 目前互联网的大厂开源的项目涉及各种语言,项目类型包含 ...
- 条理清晰,浅显易懂:Lua语法基础知识(第二部分)
今天我们继续学习Lua语法基础教程,中篇. 五.变量 5.1 number变量 变量,可以看作是一个桶,在里面装你想要装的内容.这些内容可以是Lua包含的所有合法类型. 例如:我想要新建一个桶,名叫b ...
- 《Django 5 By Example》阅读笔记:p679-p765
<Django 5 By Example>学习第10天,p679-p765总结,总计87页. 一.技术总结 1.channel 书里通过聊天软件功能演示Django中channel以及异步 ...
- 有经验的Java开发者和架构师容易犯的10个错误
本文由 ImportNew - Andy.Song 翻译自 zeroturnaround.如需转载本文,请先参见文章末尾处的转载要求. 首先允许我们问一个严肃的问题?为什么Java初学者能够方便的从网 ...
- JS之Class类
转载:https://juejin.cn/post/7098891689955164168 ECMAScript 6 提供了更接近传统语言的写法,新引入的class关键字具有正式定义类的能力.类(cl ...
- golang之jwt的token登录
什么是 JSON Web Token? JSON Web Token(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,用于在各方之间以 JSON 方式安全地传输信息.由于此 ...
- 借助AI助手分析LlamaIndex的工作流可视化
接续上次的讨论,我们上次主要分析了LlamaIndex工作流的核心流程,当前还剩下一行代码需要关注,那就是关于工作流的可视化.今天我们的目标是深入理解这一可视化部分的主要流程,并且对其大体的实现方式进 ...
- jumpserver 工单系统 二次开发工单管理并开源代码
介绍 JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统.JumpServer 帮助企业以更安全的方式管控和登录所有类型的资产,实现事前授权.事中监察.事后审计,满 ...