FAST_LIO
FAST_LIO copied to clipboard
Segmentation fault (due to placeholders warning in boost?
I'm having this error when launching fast lio in Ros2 Humble:
$ ros2 run fast_lio fastlio_mapping
Multi thread started
[INFO] [1715220416.517687042] [laser_mapping]: p_pre->lidar_type 1
[ros2run]: Segmentation fault
In the colcon build I had the following warning:
Current CPU archtecture: x86_64 Processer number: 12 core for MP: 3 Eigen:/usr/local/include/eigen3 In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22, from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23, from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14, from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42, from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25, from /usr/include/boost/smart_ptr/shared_ptr.hpp:29, from /usr/include/boost/shared_ptr.hpp:17, from /usr/include/boost/date_time/microsec_time_clock.hpp:18, from /usr/include/boost/interprocess/detail/posix_time_types_wrk.hpp:31, from /usr/include/boost/interprocess/detail/os_thread_functions.hpp:36, from /usr/include/boost/interprocess/sync/file_lock.hpp:26, from /usr/local/include/pcl-1.14/pcl/io/pcd_io.h:46, from /opt/ros/humble/include/pcl_conversions/pcl_conversions.h:72, from /.../fastlio_ws/src/FAST_LIO/src/IMU_Processing.hpp:18, from /.../fastlio_ws/src/FAST_LIO/src/laserMapping.cpp:47: /usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.’ 36 | BOOST_PRAGMA_MESSAGE( | ^~~~~~~~~~~~~~~~~~~~
Finished <<< fast_lio [6min 19s]
Summary: 1 package finished [6min 20s] 1 package had stderr output: fast_lio
The boost version is: 1.74.0.
I need to launch FAST LIO 2 with OUSTER lidar. Now I have tunned ouster64 files and topics and I have the same error with p_pre->lidar_type 3
In my case it was because some paths were not correctly taken.