Ask Your Question
0

rosout symbol lookup error

asked 2020-04-21 11:17:27 -0500

albert ciurana gravatar image

HI all, I am introducing to ROS and I am trying to follow the beginner tutorials. I've got an error when launching roscore:

auto-starting new master
process[master]: started with pid [13983]
ROS_MASTER_URI=http://localhost:11311/
setting /run_id to 4de83cb2-83de-11ea-bdee-acfdce903724
process[rosout-1]: started with pid [13994]
started core service [/rosout]
/opt/ros/melodic/lib/rosout/rosout: symbol lookup error: /opt/ros/melodic/lib/librosconsole_log4cxx.so: undefined symbol: _ZN7log4cxx16AppenderSkeleton9setOptionERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_
[rosout-1] process has died [pid 13994, exit code 127, cmd /opt/ros/melodic/lib/rosout/rosout __name:=rosout __log:=/home/albert/.ros/log/4de83cb2-83de-11ea-bdee-acfdce903724/rosout-1.log].
log file: /home/albert/.ros/log/4de83cb2-83de-11ea-bdee-acfdce903724/rosout-1*.log
[rosout-1] restarting process

It seems to be an error with some kind of symbol from /opt/ros/melodic/lib/librosconsole_log4cxx.so that causes an exit code 127 to rosout. It is repeating all the time the same error in new processes.

I have Melodic full desktop installation on Ubuntu 18.04. New installation clean and updated without any broken packages.

What do you think is it happening?

Thanks in advance!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2020-04-30 05:37:00 -0500

albert ciurana gravatar image

Finally I found the problem.

It was a library mismatch due to ${LD_LIBRARY_PATH} path order to find liblog4cxx.so.10 library.

I had another software that uses its own liblog4cxx.so.10 and includes it from another path that was preeminent in order. I found it executing:

ldd /opt/ros/melodic/lib/librosconsole_log4cxx.so

to see which libraries it is using, and I got that liblog4cxx.so.10 was not the /lib/x86_64-linux-gnu/liblog4cxx.so.10.

The solution is to change the path order in ${LD_LIBRARY_PATH}, or execute roscore as:

LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH roscore

Problem solved.

edit flag offensive delete link more

Comments

Hello, thank you for your answer it helps me a lot. I got this error while I was trying to install bostondyn_healthcare package it might be the same issue for you?

alexltz gravatar image alexltz  ( 2020-05-06 12:09:18 -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

3 followers

Stats

Asked: 2020-04-21 11:17:27 -0500

Seen: 38 times

Last updated: Apr 30