openai / mujoco-py

MuJoCo is a physics engine for detailed, efficient rigid body simulations with contacts. mujoco-py allows using MuJoCo from Python 3.
Other
2.81k stars 810 forks source link

GLFW error: The DISPLAY environment variable is missing #705

Closed wj210 closed 2 years ago

wj210 commented 2 years ago

Bug:

[2022-04-20 11:25:01,490] GLFW error: 65544, desc: X11: The DISPLAY environment variable is missing                         
Traceback (most recent call last):                                                                                          
  File "rpsp/run/call_test.py", line 200, in <module>                                                                       
    run_Nmodel(args, test_file, N=args.repeat, loadfile=args.loadfile)
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/run/stats_test.py", line 36, in
 run_Nmodel
    run_policy_continuous(args, filename)
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/run/test_policy_network.py", li
ne 321, in run_policy_continuous                
    run_experiment()                                          
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/run/test_policy_network.py", li
ne 317, in run_experiment
    logger=pp.logger, tfile=args.tfile,test_iter = args.test_iter,args=args,)
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/policy_opt/policy_learn.py", li
ne 100, in learn_policy
    num_samples=num_samples,render = True)
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/envs/environments.py", line 138
, in run
    env_img = self.render()
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/envs/environments.py", line 318
, in render
    env_img = self._base.render()
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/envs/environments.py", line 318
, in render
    env_img = self._base.render()
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/rpsp-0.1-py2.7.egg/rpsp/envs/environments.py", line 262
, in render
    env_img = self.env.render(mode = 'human')
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/gym/core.py", line 153, in render
    return self._render(mode=mode, close=close)
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/gym/envs/mujoco/mujoco_env.py", line 115, in _render
    self._get_viewer().loop_once()
  File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/gym/envs/mujoco/mujoco_env.py", line 122, in _get_viewe
r
    self.viewer.start()
 File "/home/weijie/anaconda3/envs/rpsp/lib/python2.7/site-packages/mujoco_py/mjviewer.py", line 166, in start
    raise Exception('glfw failed to initialize')
Exception: glfw failed to initialize

I am attempting to render an image using 'human' mode but ran into this glfw error. I tried 'rgb_array' and it does not help. I seen other threads which show that using env.sim.render could help but the mujoco im running on is 0.5.0 which is an old version compatible with python 2.7 and im not able to import mjsim for some reason. I believe it could be due to some wrong or missing dependencies as i am running on a shared server without root access. If i were to run on my own VM, there isn't any issue with rendering, which i think is because i downloaded mujoco and it's dependencies correctly following some tutorial. Does anyone know what packages are missing to correct this error?

P.S: I have tried installing libglew-dev and glfw3-dev and doesn't seem to work Environment: python 2.7 mujoco 0.5.0