在之前的博客中记录了如何Windows10下安装mujuco,本是奔着省事的目的,但随之而来的是更多的麻烦,后续在装机器人动力学的库PyKDL的时候需要进行各种以来包的编译,在Windows环境下十分不友好,自己也尝试继续在Windows上进行配置,但无奈目前能力尚且有限,且不太愿意在环境配置上花费过多时间,因此无奈转战Linux下。相关配置过程在mujoco-py的github上还是有十分详细的描述,但由于我使用的是Ubuntu22的新系统中间还是遇到了一系列问题,因此做一下记录,方便日后参考,同时也希望可以帮助到与我遇到一样问题的人~
文章目录
1 准备工作
1.1 Mujoco
获取mujoco210,项目文件,我将项目文件放在home目录下,
/home/xxx/mujoco210
该目录我们后续会用到,为了方便我们就将其称作mujoco根目录。
1.2 Anaconda
我下载的是最新版的anaconda【2022/08/23】,关于anaconda的安装网上还是比较多参考内容的,我就不做重复的copy-paste了。安装anaconda后,我们创建python3.7的环境:
conda create -n mujoco python=3.7
1.3 依赖包
由于我的系统是新系统,很多依赖包都没有所需需要事先安装,在mujoco-py的官网上也有给出安装这些包的提示。
emmmm, 具体为什么要这些包,我也是第一次安装的时候报错了才找到官网上的提示的,这里就先把这些包当作一个准备工作进行:
sudo apt install libosmesa6-dev libgl1-mesa-glx libglfw3
1.4 mujoco-ur5模型的下载
我下载的是mujoco-ur5-model的模型进行验证,我将其放在了如下路径:
/home/xxx/mujoco210/model
项目内的文件夹详情如下:
2 配置、验证和错误
2.1 mujoco-py
进入我们创建的mujoco环境:
conda activate mujoco
直接使用pip进行安装:
pip install mujoco-py
安装成功后配置mujoco的路径,如下:
export MUJOCO_PY_MUJOCO_PATH=/home/xxx/mujoco210
2.2 验证
import mujoco_py as mp
if __name__ == '__main__':
model = mp.load_model_from_path('/home/xxx/mujoco210/model/mujoco-ur5-model/example.xml')
sim = mp.MjSim(model)
viewer = mp.MjViewer(sim)
while 1:
viewer.render()
运行上述代码进行环境的验证。
2.3 错误
2.3.1 Missing path to your environment variable
这是我碰到的第一个错误,但好在这个错误有直接给出提示,我们还需要创建另外一个环境变量:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/xxx/mujoco210/bin
2.3.2 version ‘GLIBCXX_3.4.30’ not found
在配置完2.3.1中的路径后,进而遇到的是该问题,这个问题困扰我挺久的,最终在stackoverflow上找到一个回答,很好地解决了我的问题:
附上参考链接 ‘GLIBCXX_3.4.30’ not found for librosa in conda virtual environment (after trying out a lot of solutions)?,十分感谢。
按照该方式,我解决了上面遇到的那个问题:
conda install -c conda-forge gcc=12.1.0
2.4 成功验证
解决完2.3.1和2.3.2中的问题后,我再次运行验证程序,就可以得到mujoco的界面了: