helloworld_ros2 segmentation fault error
Opened this issue · 0 comments
pantphot commented
Hello!
I'm trying to execute the helloworld_ros2 example (feature/TCP_DynTypes branch) with ros2 crystal on Ubuntu 18.04 and i get a segmentation fault. The helloworld_orion example works perfectly.
I execute: $ ros2 run --prefix 'gdb -ex run --args' firos2 firos2 config.xml
Output:
Reading symbols from /home/ros2/firos2/install/firos2/lib/firos2/firos2...done.
Starting program: /home/ros2/firos2/install/firos2/lib/firos2/firos2 config.xml
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
INFO: Profiles parsed successfully.
[New Thread 0x7ffff0350700 (LWP 10294)]
Thread 2 "firos2" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff0350700 (LWP 10294)]
---Type <return> to continue, or q <return> to quit---
0x00007ffff765ada8 in asio::detail::epoll_reactor::shutdown_service() () from /opt/ros/crystal/lib/libfastrtps.so.1
(gdb)
(gdb) where
#0 0x00007ffff765ada8 in asio::detail::epoll_reactor::shutdown_service() () from /opt/ros/crystal/lib/libfastrtps.so.1
#1 0x00007ffff06786e0 in asio::detail::service_registry::shutdown_services (this=0x7fffe8000b20)
at /home/ros2/firos2/thirdparty/asio/asio/include/asio/detail/impl/service_registry.ipp:43
#2 0x00007ffff06787df in asio::execution_context::shutdown (
this=0x7ffff034f2e0)
at /home/ros2/firos2/thirdparty/asio/asio/include/asio/impl/execution_context.ipp:40
#3 0x00007ffff0678783 in asio::execution_context::~execution_context (this=0x7ffff034f2e0, __in_chrg=<optimized out>)
at /home/ros2/firos2/thirdparty/asio/asio/include/asio/impl/execution_context.ipp:33
#4 0x00007ffff0681dee in asio::io_context::~io_context (
this=0x7ffff034f2e0, __in_chrg=<optimized out>)
at /home/ros2/firos2/thirdparty/asio/asio/include/asio/impl/io_context.ipp:54
#5 0x00007ffff067d839 in NGSIv2Subscriber::listener (
this=0x5555559bc0e0)
at /home/ros2/firos2/src/NGSIv2/NGSIv2Subscriber.cpp:241
#6 0x00007ffff0685e46 in std::__invoke_impl<void, void (NGSIv2Sub---Type <return> to continue, or q <return> to quit---
scriber::*)(), NGSIv2Subscriber*> (
__f=@0x5555559bc350: (void (NGSIv2Subscriber::*)(NGSIv2Subscriber * const)) 0x7ffff067d2a8 <NGSIv2Subscriber::listener()>,
__t=@0x5555559bc348: 0x5555559bc0e0)
at /usr/include/c++/7/bits/invoke.h:73
#7 0x00007ffff0684c17 in std::__invoke<void (NGSIv2Subscriber::*)(), NGSIv2Subscriber*> (
__fn=@0x5555559bc350: (void (NGSIv2Subscriber::*)(NGSIv2Subscriber * const)) 0x7ffff067d2a8 <NGSIv2Subscriber::listener()>,
__args#0=@0x5555559bc348: 0x5555559bc0e0)
at /usr/include/c++/7/bits/invoke.h:95
#8 0x00007ffff06888e7 in std::thread::_Invoker<std::tuple<void (NGSIv2Subscriber::*)(), NGSIv2Subscriber*> >::_M_invoke<0ul, 1ul>
(this=0x5555559bc348) at /usr/include/c++/7/thread:234
#9 0x00007ffff06884a8 in std::thread::_Invoker<std::tuple<void (NGSIv2Subscriber::*)(), NGSIv2Subscriber*> >::operator() (
this=0x5555559bc348) at /usr/include/c++/7/thread:243
#10 0x00007ffff0687bbe in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (NGSIv2Subscriber::*)(), NGSIv2Subscriber*> > >::_M_run (this=0x5555559bc340)
at /usr/include/c++/7/thread:186
#11 0x00007ffff6fe557f in ?? ()
---Type <return> to continue, or q <return> to quit---
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#12 0x00007ffff64f56db in start_thread (arg=0x7ffff0350700)
at pthread_create.c:463
#13 0x00007ffff6a4088f in clone ()
at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95