VirtualGL: a solution to running qdec and freeview over vnc
qdec and freeview are built upon VTK, and VTK unfortunately is problematic when run over vnc (at least thats the case with vtk v5.6.0, whereas v5.4.2 didnt seem to have this problem). the problem is when a qdec is run within a vnc (remote) terminal screen, it gives this error:
>> neptune:sita[85] qdec & >> [1] 27225 >> neptune:sita[86] Xlib: extension "NV-GLX" missing on display ":1.0". >> X Error of failed request: GLXBadRenderRequest >> Major opcode of failed request: 151 (GLX) >> Minor opcode of failed request: 1 (X_GLXRender) >> Serial number of failed request: 1838 >> Current serial number in output stream: 1842
one solution is to use VirtualGL.
installation instructions are here. it requires sudo or root access to install. installation is two-part:
- install the VirtualGL-2.1.4.x86_64.rpm on your NMR center machine (for example, 'neptune').
- run vglserver_config, per section 5 of the instructions
then, to make use of VirtualGL, start your vnc connection from your client (say, using vncviewer or whatever) to the server (say, 'neptune') the same way you always do.
then, to run qdec, first do this:
source $FREESURFER_HOME/bin/qdec
it will print the GLXBadRenderRequest message. ignore it. now type:
vglrun qdec.bin
and qdec should run.
replace 'freeview' with 'qdec' in the above commands to run freeview.