0
$\begingroup$

Rosanswers logo

Hi, I have recently installed ROS electric and found out that rviz comes with following error:

NODES
  /
    rviz (rviz/rviz)

ROS_MASTER_URI=http://192.168.0.101:11311

core service [/rosout] found
process[rviz-1]: started with pid [2976]
[ERROR] [1315474799.086848538]: Caught exception while loading: OGRE EXCEPTION(7:InternalErrorException): Cannot create GL vertex buffer in GLHardwareVertexBuffer::GLHardwareVertexBuffer at /tmp/buildd/ros-electric-visualization-common-1.6.0/debian/ros-electric-visualization-common/opt/ros/electric/stacks/visualization_common/ogre/build/ogre_src_v1-7-1/RenderSystems/GL/src/OgreGLHardwareVertexBuffer.cpp (line 46)
^C[rviz-1] killing on exit
[rviz-1] escalating to SIGTERM
[rviz-1] escalating to SIGKILL
Shutdown errors:
 * process[rviz-1, pid 2976]: required SIGKILL. May still be running.
shutting down processing monitor...
... shutting down processing monitor complete
done

I wonder if anyone knows what is the problem.


Originally posted by Reza on ROS Answers with karma: 116 on 2011-09-07

Post score: 3


Original comments

Comment by martimorta on 2011-09-11:
I have Ubuntu 10.04, graphics card: nVidia Corporation G92 [GeForce 9800 GT], ros installed from .deb (synaptic). Furthermore, rviz has worked fine in cturtle and diamondback.

Comment by joq on 2011-09-08:
To help you, we need a lot more information. What graphics hardware do you have? What OS version? X server settings? ROS installed from binary or source? Etc.?

Comment by martimorta on 2011-09-08:
The same happens to me

$\endgroup$

3 Answers 3

0
$\begingroup$

Rosanswers logo

We need more information. Can you please run rviz with the "-l" option to generate an Ogre.log file? Like:

rosrun rviz rviz -l

This will cause rviz to generate an Ogre.log file. When the Ogre 3D library has problems, it puts most of its useful output in Ogre.log (but only if you run with -l).

Also, see the rviz troubleshooting page for info on some common issues and a guide to making useful bug reports.


Originally posted by hersh with karma: 1351 on 2011-09-12

This answer was ACCEPTED on the original site

Post score: 4

$\endgroup$
0
$\begingroup$

Rosanswers logo

So far I have found 2 ways to get this failure:

  • Run rviz remotely

Running rviz remotely is not supported.

  • Have a misconfigured nvidia-OpenGL setup.

Having a misconfigured nvidia-OpenGL setup seems pretty easy. I ran into that myself while trying to duplicate this error by reverting to an old driver version. This page was the seed that got me started on the fix. Ultimately my problem was that rviz was linking against a version of libGL.so that did not match the driver.

I saw this by running

glxinfo | grep version

and seeing

server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
OpenGL version string: 3.3.0 NVIDIA 270.41.06
OpenGL shading language version string: 3.30 NVIDIA via Cg compiler

So my installed OpenGL NVIDIA driver was version 270.41.06.

when i ran

roscd rviz
ldd bin/rviz | grep libGL

I saw this:

libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f344c19e000)
libGLU.so.1 => /usr/lib/libGLU.so.1 (0x00007f344bf2c000)
libGLcore.so.1 => /usr/lib/libGLcore.so.1 (0x00007f34439dc000)

and then I ran

ls -l /usr/lib/libGL.so.1

and saw

lrwxrwxrwx 1 root root       18 2011-09-14 09:59 libGL.so.1 -> libGL.so.195.36.24

In other words, rviz was linking against a libGL from NVIDIA version 195.36.24.

To fix it, I just removed the offending library files:

sudo rm /usr/lib/libGL.so
sudo rm /usr/lib/libGL.so.1
sudo rm /usr/lib/libGL.so.195.36.24

The correct library files were already installed in the /usr/lib/nvidia-current directory, and they were automatically found when I ran rviz again.


Originally posted by hersh with karma: 1351 on 2011-09-14

This answer was NOT ACCEPTED on the original site

Post score: 6


Original comments

Comment by Reza on 2011-09-15:
many thanks, it worked.

Comment by Pablo Iñigo Blasco on 2011-09-14:
It worked. Great!

Comment by martimorta on 2011-09-14:
:_) Worked great! thanks!!

$\endgroup$
0
$\begingroup$

Rosanswers logo

I don't know if it helps at this late date, but I just encountered this problem. RViz worked in diamondback, but I got the segmentation fault in electric. For me, first setting the OGRE_RTT_MODE to Copy as described here:

http://www.ros.org/wiki/rviz/Troubleshooting#Segfault_during_startup

and then removing my .rviz directory worked. Note that neither one worked on their own, I had to do both to get it to start.


Originally posted by jbarry with karma: 280 on 2011-12-03

This answer was NOT ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.