Ask Your Question
0

rosout keeps on dying and respawning

asked 2012-09-07 12:13:22 -0600

agoto gravatar image

updated 2012-09-10 08:40:30 -0600

Hello,

Following this issue, it seemed I have finally succeeded at compiling ROS Electric against boost 1.46.1 on Ubuntu 10.04.

But after I launch

roscore

It seems it cannot be started properly, and an infinite loop of respawning happens.

auto-starting new master
process[master]: started with pid [28419]
ROS_MASTER_URI=http://hobby:11311/

setting /run_id to 256c859c-f938-11e1-b18c-5404a6b6cf18
process[rosout-1]: started with pid [28432]
started core service [/rosout]
rosout: /usr/local/include/boost/smart_ptr/shared_ptr.hpp:412: typename boost::detail::shared_ptr_traits<T>::reference boost::shared_ptr<T>::operator*() const [with T = boost::regex_traits_wrapper<boost::regex_traits<char, boost::cpp_regex_traits<char> > >]: Assertion `px != 0' failed.
[rosout-1] process has died [pid 28432, exit code -6].
log files: /home/caris/.ros/log/256c859c-f938-11e1-b18c-5404a6b6cf18/rosout-1*.log
respawning...
[rosout-1] restarting process
process[rosout-1]: started with pid [28435]
[rosout-1] process has died [pid 28435, exit code -11].
log files: /home/caris/.ros/log/256c859c-f938-11e1-b18c-5404a6b6cf18/rosout-1*.log
respawning...
[rosout-1] restarting process
process[rosout-1]: started with pid [28437]
rosout: /usr/local/include/boost/smart_ptr/shared_ptr.hpp:412: typename boost::detail::shared_ptr_traits<T>::reference boost::shared_ptr<T>::operator*() const [with T = boost::regex_traits_wrapper<boost::regex_traits<char, boost::cpp_regex_traits<char> > >]: Assertion `px != 0' failed.
[rosout-1] process has died [pid 28437, exit code -6].
log files: /home/caris/.ros/log/256c859c-f938-11e1-b18c-5404a6b6cf18/rosout-1*.log
respawning...
[rosout-1] restarting process
process[rosout-1]: started with pid [28438]
[rosout-1] process has died [pid 28438, exit code -11].
log files: /home/caris/.ros/log/256c859c-f938-11e1-b18c-5404a6b6cf18/rosout-1*.log
respawning...
[rosout-1] restarting process
process[rosout-1]: started with pid [28439]
rosout: /usr/local/include/boost/smart_ptr/shared_ptr.hpp:412: typename boost::detail::shared_ptr_traits<T>::reference boost::shared_ptr<T>::operator*() const [with T = boost::regex_traits_wrapper<boost::regex_traits<char, boost::cpp_regex_traits<char> > >]: Assertion `px != 0' failed.
[rosout-1] process has died [pid 28439, exit code -6].
log files: /home/caris/.ros/log/256c859c-f938-11e1-b18c-5404a6b6cf18/rosout-1*.log
respawning...

Again, it seems to be boost-related...but what could be causing it?!

Thanks.

EDIT: So it seems that somewhere ROS was linking header files to the older version of boost (1.40.0). I replaced them by the newest version (1.46.1) and now I don't get the assertion error anymore - but it still crashes with error code -11.

SUMMARY
========

PARAMETERS
 * /rosversion
 * /rosdistro

NODES

auto-starting new master
process[master]: started with pid [4710]
ROS_MASTER_URI=http://hobby:11311/

setting /run_id to 18e25bba-fb74-11e1-a5e8-5404a6b6cf18
process[rosout-1]: started with pid [4723]
started core service [/rosout]
[rosout-1] process has died [pid 4723, exit code -11].
log files: /home/caris/.ros/log/18e25bba-fb74-11e1-a5e8-5404a6b6cf18/rosout-1*.log
respawning...
[rosout-1] restarting process
process[rosout-1]: started with pid [4726]
[rosout-1] process has died [pid 4726, exit code -11].
log files: /home/caris/.ros/log/18e25bba-fb74-11e1-a5e8-5404a6b6cf18/rosout-1*.log
respawning...
[rosout-1] restarting process
process[rosout-1]: started with pid [4727]
[rosout-1] process has died [pid 4727, exit code -11].
log files: /home/caris/.ros/log/18e25bba-fb74-11e1-a5e8-5404a6b6cf18/rosout-1*.log
respawning...

Any suggestions? The log files don't help - one is empty and other displays only repeated instances of:

respawning...
[roslaunch][INFO] 2012-09-10 11:19:46,050: [rosout-1] restarting process
[roslaunch ...
(more)
edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
0

answered 2012-10-21 15:59:26 -0600

tfoote gravatar image

If it was trying to link against 1.40 that suggests that you previously compiled against 1.40 and are recompiling against 1.46.1 If so if you just "fix" the linking errors by replacing the libraries. Whatever was asking for the 1.40 version of boost needs to be recompiled. As such I'd suggest that you make sure to clean everything and verify that you have no *.o *.a *.so files anywhere in your tree before recompiling.

edit flag offensive delete link more
0

answered 2012-09-07 14:00:51 -0600

kszonek gravatar image

Since boost 1.46.1 comes as an update in 10.04 (am I right?), you should make sure there are no leftovers from previous versions in the system, especially headers. If there are any, check if CMake doesn't added them to compiler command (-I/path/to/wrong/version/of/boost/headers).

Are you linking boost_regex while building ROS? If not try adding regex to CMakeLists.

edit flag offensive delete link more

Comments

Actually, boost 1.46.1 is not needed in 10.04 - I just happen to need this version to use a wrapped library, instead of 1.40.0 (by default installed by ROS for Ubuntu 10.04).

agoto gravatar imageagoto ( 2012-09-10 08:35:51 -0600 )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

Stats

Asked: 2012-09-07 12:13:22 -0600

Seen: 1,900 times

Last updated: Oct 21 '12