Ask Your Question
2

rqt segmentation fault following tutorials

asked 2017-02-02 15:50:42 -0500

juakofz gravatar image

updated 2017-02-03 10:46:22 -0500

Hi everybody

I just installed ROS Kinetic Kame on Ubuntu 16.04 following the tutorials. When I get to the 6th beginner tutorial (Understanding ROS Topics, http://wiki.ros.org/ROS/Tutorials/Und... ), at 2.1, when I try to run rqt_graph, I get the message "Segmentation fault (core dumped)". This also happens when running rqt directly.

I've been looking around for a solution, but I did not find anybody with this problem. I have tried reinstalling both ROS and rqt packages, but it didn't make any difference. Besides, the wiki page for rqt ( http://wiki.ros.org/rqt ) throws an "Internal Server Error", so I cannot get much info.

Any help would be appreciated. Thanks a lot

** Update 1: already updated Qt, no changes

** Update 2: here is the gdb:

(gdb) run /opt/ros/kinetic/bin/rqt
Starting program: /usr/bin/python /opt/ros/kinetic/bin/rqt
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe72f0700 (LWP 7034)]
[New Thread 0x7fffdd857700 (LWP 7035)]
[New Thread 0x7fffdd056700 (LWP 7036)]
[New Thread 0x7fffdc855700 (LWP 7037)]
[New Thread 0x7fffcf675700 (LWP 7039)]
[New Thread 0x7fffcee74700 (LWP 7040)]

Thread 1 "python" received signal SIGSEGV, Segmentation fault.
0x0000000000000000 in ?? ()

(gdb) backtrace
#0  0x0000000000000000 in ?? ()
#1  0x00007fffccf5a337 in ?? () from /opt/ros/kinetic/lib/python2.7/dist-packages/qt_gui_cpp/libqt_gui_cpp_sip.so
#2  0x00007fffef322811 in ?? () from /usr/lib/python2.7/dist-packages/sip.x86_64-linux-gnu.so
#3  0x00007fffef31f642 in ?? () from /usr/lib/python2.7/dist-packages/sip.x86_64-linux-gnu.so
#4  0x00000000004b670c in ?? ()
#5  0x00000000004b0cb3 in PyObject_Call ()
#6  0x00000000004c9faf in PyEval_EvalFrameEx ()
#7  0x00000000004c2765 in PyEval_EvalCodeEx ()
#8  0x00000000004de6fe in ?? ()
#9  0x00000000004b0cb3 in PyObject_Call ()
#10 0x00000000004f492e in ?? ()
#11 0x00000000004b0cb3 in PyObject_Call ()
#12 0x00000000004f46a7 in ?? ()
#13 0x00000000004b670c in ?? ()
#14 0x00000000004b0cb3 in PyObject_Call ()
#15 0x00000000004c9faf in PyEval_EvalFrameEx ()
#16 0x00000000004c9d8f in PyEval_EvalFrameEx ()
#17 0x00000000004c9d8f in PyEval_EvalFrameEx ()
#18 0x00000000004c9d8f in PyEval_EvalFrameEx ()
#19 0x00000000004c9d8f in PyEval_EvalFrameEx ()
#20 0x00000000004c9d8f in PyEval_EvalFrameEx ()
#21 0x00000000004c2765 in PyEval_EvalCodeEx ()
#22 0x00000000004ca099 in PyEval_EvalFrameEx ()
#23 0x00000000004c2765 in PyEval_EvalCodeEx ()
#24 0x00000000004ca099 in PyEval_EvalFrameEx ()
#25 0x00000000004c2765 in PyEval_EvalCodeEx ()
#26 0x00000000004c2509 in PyEval_EvalCode ()
#27 0x00000000004f1def in ?? ()
#28 0x00000000004ec652 in PyRun_FileExFlags ()
#29 0x00000000004eae31 in PyRun_SimpleFileExFlags ()
#30 0x000000000049e14a in Py_Main ()
#31 0x00007ffff7811830 in __libc_start_main (main=0x49dab0 <main>, argc=2, argv=0x7fffffffdcd8, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fffffffdcc8) at ../csu/libc-start.c:291
#32 0x000000000049d9d9 in _start ()
(gdb)
edit retag flag offensive close merge delete

Comments

The wiki page works fine for me.

Can you post a stack trace from running it with gdb. Maybe that helps in identifying the problem.

Dirk Thomas gravatar imageDirk Thomas ( 2017-02-03 09:11:15 -0500 )edit

Yeah, the wiki page now works. I edited my post with the stack trace (I hope I did it right)

juakofz gravatar imagejuakofz ( 2017-02-03 10:46:55 -0500 )edit

Hi. I have the same problem! Fighting with it for 3 days!!! Any rqt_* app throws segfault. My system - Ubuntu 16.04, ROS Kinetic, CPU- core i7-6700, GPU- GeForce GTX 970M. P.S. But strange thing - on my old pc (core2 Duo + old GeForce) with the same OS and ROS version rqt works like a charm!

ClRobotics gravatar imageClRobotics ( 2017-02-15 15:04:44 -0500 )edit
1

I would suggest to compare the version numbers of all involved packages (Qt, ros-kinetic-python-qt-binding, ros-kinetic-qt-gui, rqt, PyQt / PySide, etc.).

Dirk Thomas gravatar imageDirk Thomas ( 2017-02-15 15:28:03 -0500 )edit

Yeah, make sure you don't have any partial updates anywhere. Without ABI compatibility guarantees, partial upgrades can lead to hard to explain SEGFAULTs that seem to make no sense.

gvdhoorn gravatar imagegvdhoorn ( 2017-02-16 01:43:09 -0500 )edit
1

I fixed the issue by brute force by basically doing a clean ubuntu install. Sooo... yeah, good luck

juakofz gravatar imagejuakofz ( 2017-02-16 04:48:21 -0500 )edit

I've fix it!!! As you said guys, issue was in different versions of pyqt, python-sip and some other libraries. In my case, newer versions were got from Cura ppa repository. Thank you for help!

ClRobotics gravatar imageClRobotics ( 2017-02-19 07:13:37 -0500 )edit

@juakofz If you feel like my answer below (based on the comment from @CIRobotics) solves the issue, can you please accept it as the right answer?

damjan gravatar imagedamjan ( 2017-05-19 02:40:08 -0500 )edit

3 Answers

Sort by ยป oldest newest most voted
2

answered 2017-04-16 17:05:38 -0500

damjan gravatar image

Had this same issue, and the fix proposed by @CIRobotics in comments worked for me too. I'll just elaborate on the exact steps I took to resolve it.

The issue is caused by newer versions of packages (python-pyqt5 and python-sip) installed by the Cura PPA. The following steps solved the issue for me:

  1. Uninstall the newer package versions that were installed from the PPA:

    sudo apt remove python-pyqt5 pyton3-pyqt5 python-sip python3-sip sip-dev

  2. Remove the PPA:

    sudo rm /etc/apt/sources.list.d/thopiekar-ubuntu-cura-xenial.list sudo apt update

  3. Reinstall ros-kinetic-desktop-full

    sudo apt install ros-kinetic-desktop-full

  4. Check with sudo apt autoremove for any other packages that were broken by the downgrade and install or autoremove them as necessary.

A more elegant solution might be to use the ppa-purge tool as described here, however, I discovered that link after I had already fixed the issue, so I could not try it out.

Of course, the drawback of the above solution is that you will not be able to use the Cura software on your Xenial system. I'm dual-booting Windows, so I'll just install the Windows version. I'm currently not aware of a more elegant solution.

edit flag offensive delete link more

Comments

1

A bit of info on why these problems might happen: if the pyqt pkgs provided in the Cura PPA aren't ABI compatible with the ones the ROS pkgs use, you can run into things like SEGFAULTs.

gvdhoorn gravatar imagegvdhoorn ( 2017-04-25 03:12:47 -0500 )edit
1

If you want to use Cura regardless, Ultimaker provides fully packaged .AppImages ( that include the dependencies. IIRC, Ultimaker compiles Qt from source.

Loy gravatar imageLoy ( 2017-11-09 12:58:36 -0500 )edit
0

answered 2019-07-31 23:47:56 -0500

cognitiveRobot gravatar image

It's not a solution to this problem. It's a workaround. I tried as @damjan mention but didn't work. Currently, I am visualizing the graph as below:

  1. Run rqt - $ rqt
  2. From the GUI - Click Plugins -> Introspection -> Node graph
edit flag offensive delete link more
0

answered 2017-02-03 02:22:44 -0500

According to the rqt ros wiki page, rqt for Kinetic requires Qt 5.3, so I would check my Qt version.

edit flag offensive delete link more

Comments

Just updated Qt, still the same. Thanks anyway

juakofz gravatar imagejuakofz ( 2017-02-03 09:32:33 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

2 followers

Stats

Asked: 2017-02-02 15:50:42 -0500

Seen: 2,442 times

Last updated: Jul 31