# "X\_GLXCreateNewContext" error only when launching ParaView over a remote connection with X forwarding

**URL:** https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945
**Category:** ParaView Support
**Created:** [December 1, 2020, 1:01pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945 "2020-12-01T13:01:37Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![XavierStuvw](https://discourse.paraview.org/user_avatar/discourse.paraview.org/xavierstuvw/32/2619_2.png) [@XavierStuvw](https://discourse.paraview.org/u/XavierStuvw)
#### Post date: [December 1, 2020, 1:01pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945/1 "2020-12-01T13:01:37Z")

</div>

I wondered if anyone in this community has experienced the issue of getting OpenGL to work on two computers separately but not when connected remotely with VPN and SSH.

I have a local installation of ParaView 5.7.0 at the office which opens up the windows normally. Likewise, with another installation at home. Troubles occurs as I connect from home to the office computer via VPN and SSH (`ssh -YC etc etc`). When I launch the remote PV from a ssh’ed terminal, PV aborts with the error

> [paraview]vtkXOpenGLRenderWindow.:705 ERR| vtkXOpenGLRenderWindow (0x5564d234cdf0): Cannot create GLX context. Aborting

I isolated that ParaView cannot create a window with OpenGL. Indeed, `glxinfo` on the ssh’ed terminal returns the “X\_GLXCreateNewContext” error

> name of display: localhost:10.0  
> X Error of failed request: BadValue (integer parameter out of range for operation)  
> Major opcode of failed request: 152 (GLX)  
> Minor opcode of failed request: 24 (X\_GLXCreateNewContext)  
> Value in failed request: 0x0  
> Serial number of failed request: 37  
> Current serial number in output stream: 38

Note that `glxgears` does very well in my home computer. Also, at home, `glxinfo` goes farther than that and finds all it needs:

> name of display: :0  
> display: :0 screen: 0  
> direct rendering: Yes  
> server glx vendor string: SGI  
> etc etc

Also, at home I manage to open without problems other programs natively installed in the remote network.  
There is a difference between drivers at home and at the office, but this seems normal to me.  
So, alas, something is lacking either in my own installation of ParaView at the office or in the way I launch it from home.

Is there a way to inform ParaView, hence OpenGL, that it has to adjust (something) when I call it from a ssh’ed terminal?  
That is, from home rather from the office?

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [December 1, 2020, 1:14pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945/2 "2020-12-01T13:14:05Z")

</div>

X forwarding is not supported by ParaView.

Use either something like vncviewer or the actual client/server architecture of ParaView:  
[https://www.paraview.org/Wiki/ParaView:Server\_Configuration](https://www.paraview.org/Wiki/ParaView:Server_Configuration)  
[https://www.paraview.org/Wiki/Setting\_up\_a\_ParaView\_Server](https://www.paraview.org/Wiki/Setting_up_a_ParaView_Server)

---

<div class="post-metadata">

### Author: ![XavierStuvw](https://discourse.paraview.org/user_avatar/discourse.paraview.org/xavierstuvw/32/2619_2.png) [@XavierStuvw](https://discourse.paraview.org/u/XavierStuvw)
#### Post date: [December 1, 2020, 1:41pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945/3 "2020-12-01T13:41:18Z")

</div>

Clearly the test on `glxinfo` is independent of Paraview, so it is not ParaView that makes `glxinfo` fail.

Is it then OpenGL that does not support X forwarding?  
Or would not ParaView work even if OpenGL worked across the two computers?

(Making the office computer a server of my home computer is not an option.)

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [December 1, 2020, 1:43pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945/4 "2020-12-01T13:43:34Z")

</div>

> Or would not ParaView work even if OpenGL worked across the two computers?

No it wouldn’t, you will be greeted with an insuficient OpenGL Version warning and nothing will work.

---

<div class="post-metadata">

### Author: ![XavierStuvw](https://discourse.paraview.org/user_avatar/discourse.paraview.org/xavierstuvw/32/2619_2.png) [@XavierStuvw](https://discourse.paraview.org/u/XavierStuvw)
#### Post date: [December 1, 2020, 1:51pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945/5 "2020-12-01T13:51:42Z")

</div>

Thanks for the clarification. It helps banging one’s head on the right wall.

Would you please direct me to some entry points concerning vncviewer and suchlike applied to PV? I am not familiar with the concept. If these toolkits are meant to support PV client/server connections only, any additional information is unnecessary, however.

---

<div class="post-metadata">

### Author: ![mwestphal](https://discourse.paraview.org/user_avatar/discourse.paraview.org/mwestphal/32/17_2.png) [@mwestphal](https://discourse.paraview.org/u/mwestphal)
#### Post date: [December 1, 2020, 2:02pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945/6 "2020-12-01T14:02:41Z")

</div>

> **[Virtual Network Computing](https://en.wikipedia.org/wiki/Virtual_Network_Computing)**
>
> In computing, Virtual Network Computing (VNC) is a graphical desktop-sharing system that uses the Remote Frame Buffer protocol (RFB) to remotely control another computer. It transmits the keyboard and mouse events from one computer to another, relaying the graphical-screen updates back in the other direction, over a network.
> VNC is platform-independent – there are clients and servers for many GUI-based operating systems and for Java. Multiple clients may connect to a VNC server at the same time....

  

> **[vncviewer](https://tigervnc.org/doc/vncviewer.html)**

It is nothing specific to ParaView.

---

<div class="post-metadata">

### Author: ![danlipsa](https://discourse.paraview.org/user_avatar/discourse.paraview.org/danlipsa/32/1563_2.png) [@danlipsa](https://discourse.paraview.org/u/danlipsa)
#### Post date: [December 1, 2020, 7:25pm UTC](https://discourse.paraview.org/t/x-glxcreatenewcontext-error-only-when-launching-paraview-over-a-remote-connection-with-x-forwarding/5945/7 "2020-12-01T19:25:13Z")

</div>

You can use nomachine  
to run ParaView and other OpenGL applications from a remote computer.  
nomachine is only single user but I think it has paid multi-user options.

An alternative (multi-user) is virtualgl + turbovnc  
[https://virtualgl.org/vgldoc/2\_1\_1/](https://virtualgl.org/vgldoc/2_1_1/)

This is guide we did a while back for another vtk based application

[https://github.com/CDAT/cdat/wiki/Remote-server-setup-for-VNC](https://github.com/CDAT/cdat/wiki/Remote-server-setup-for-VNC)

I have not tried this lately though.
