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/ ...
随机推荐
- LeetCode题目练习记录 _数组和链表01 _20211007
LeetCode题目练习记录 _数组和链表01 _20211007 26. 删除有序数组中的重复项 难度简单2247 给你一个有序数组 nums ,请你原地 删除重复出现的元素,使每个元素 只出现一次 ...
- 基于案例分析 MySQL 权限认证中的具体优先原则
在 MySQL 的日常管理过程中,大家或多或少会遇到权限认证相关的问题. 例如,本来能够正常执行的操作,可能在新增一个账号或授权后就突然失败了. 这种现象往往让人误以为是 bug,但很多时候,其实并不 ...
- 无套路领取《AI应用开发专栏》
最近有些时间没有更新技术文章了,都在忙着写<AI应用开发入门>专栏,专栏已整理放到了github上,有兴趣的小伙伴可以移步github阅读,地址见文末. 1.为什么写这个文档 之前陆续写了 ...
- Go语言GOPATH是什么
一.GOPATH的概念 GOPATH 是 Go 语言中使用的一个环境变量,它使用绝对路径提供项目的工作目录(也称为工作区). 工作目录是一个工程开发的相对参考目录,好比当你要在公司编写一套服务器代码, ...
- k8s集群环境下kubesphere部署
安装kubernetes 1.环境配置 每个机器使用内网ip互通 每个机器配置自己的hostname,不能用localhost 所有机器均操作 #设置每个机器自己的hostname hostnamec ...
- ETCD存储满了如何处理?
一.前言 当运行 ETCD 日志报 Erro: mvcc database space exceeded 时,或者查看健康状态显示 failed to commit proposal: Active ...
- (Python基础教程之十八)Python字典交集–比较两个字典
Python示例,用于查找2个或更多词典之间的常见项目,即字典相交项目. 1.使用"&"运算符的字典交集 最简单的方法是查找键,值或项的交集,即 & 在两个字典之间 ...
- 通过双 key 来解决缓存并发问题
我们在使用缓存的时候,不管Redis或者是Memcached,基本上都会遇到以下3个问题:缓存穿透.缓存并发.缓存集中失效.这篇文章主要针对[缓存并发]问题展开讨论,并给出具体的解决方案. 1.什么是 ...
- canvas(五)绘制文本
1.绘制描边文本 说明:描边的属性是共用的,无论是绘制直线还是文字,所以有需要的话要单独设置描边颜色,相关语法如下 语法 说明 ctx.strokeStyle 设置描边的颜色(文本颜色) ctx.fo ...
- 借助AI助手分析LlamaIndex的工作流可视化
接续上次的讨论,我们上次主要分析了LlamaIndex工作流的核心流程,当前还剩下一行代码需要关注,那就是关于工作流的可视化.今天我们的目标是深入理解这一可视化部分的主要流程,并且对其大体的实现方式进 ...