APRIL-ZJU / lidar_IMU_calib

[IROS 2020] Targetless Calibration of LiDAR-IMU System Based on Continuous-time Batch Estimation
GNU General Public License v3.0
942 stars 224 forks source link

LZ4_stream_t, LZ4_streamDecode_t build error #4

Closed narutojxl closed 4 years ago

narutojxl commented 4 years ago

Hi author, When building on ubuntu18.04 and melodic, system's pcl version is 1.8, run catkin_make, the output is:

Running command: "make -j12 -l12" in "/home/jxl/catkin_li_calib/build"

Scanning dependencies of target ndt_omp [ 20%] Building CXX object ndt_omp/CMakeFiles/ndt_omp.dir/src/pclomp/ndt_omp.cpp.o [ 20%] Building CXX object ndt_omp/CMakeFiles/ndt_omp.dir/src/pclomp/voxel_grid_covariance_omp.cpp.o [ 20%] Building CXX object ndt_omp/CMakeFiles/ndt_omp.dir/src/pclomp/gicp_omp.cpp.o In file included from /usr/include/pcl-1.8/pcl/sample_consensus/sac_model.h:52:0, from /usr/include/pcl-1.8/pcl/sample_consensus/sac.h:45, from /usr/include/pcl-1.8/pcl/sample_consensus/ransac.h:44, from /usr/include/pcl-1.8/pcl/registration/icp.h:45, from /home/jxl/catkin_li_calib/src/ndt_omp/include/pclomp/gicp_omp.h:44, from /home/jxl/catkin_li_calib/src/ndt_omp/src/pclomp/gicp_omp.cpp:1: /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h: In function ‘void static_initialization_and_destruction_0(int, int)’: /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: warning: ‘pcl::SAC_SAMPLE_SIZE’ is deprecated: This map is deprecated and is kept only to prevent breaking existing user code. Starting from PCL 1.8.0 model sample size is a protected member of the SampleConsensusModel class [-Wdeprecated-declarations] SAC_SAMPLE_SIZE (sample_size_pairs, sample_size_pairs + sizeof (sample_size_pairs) / sizeof (SampleSizeModel)); ^~~~~~~ /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: note: declared here [ 26%] Linking CXX shared library /home/jxl/catkin_li_calib/devel/lib/libndt_omp.so [ 26%] Built target ndt_omp Scanning dependencies of target li_calib_lib Scanning dependencies of target align [ 33%] Building CXX object ndt_omp/CMakeFiles/align.dir/apps/align.cpp.o [ 40%] Building CXX object lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/trajectory_manager.cpp.o [ 46%] Building CXX object lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/surfel_association.cpp.o [ 53%] Building CXX object lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/lidar_odometry.cpp.o [ 60%] Building CXX object lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/inertial_initializer.cpp.o In file included from /usr/include/flann/util/serialization.h:9:0, from /usr/include/flann/util/matrix.h:35, from /usr/include/flann/flann.hpp:41, from /usr/include/pcl-1.8/pcl/kdtree/flann.h:50, from /usr/include/pcl-1.8/pcl/kdtree/kdtree_flann.h:45, from /usr/include/pcl-1.8/pcl/search/kdtree.h:44, from /usr/include/pcl-1.8/pcl/registration/registration.h:48, from /home/jxl/catkin_li_calib/src/ndt_omp/include/pclomp/ndt_omp.h:44, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/surfel_association.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:37, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/trajectory_manager.cpp:21: /usr/include/flann/ext/lz4.h:196:57: error: conflicting declaration ‘typedef struct LZ4_stream_t LZ4_stream_t’ typedef struct { long long table[LZ4_STREAMSIZE_U64]; } LZ4_stream_t; ^~~~ In file included from /opt/ros/melodic/include/roslz4/lz4s.h:38:0, from /opt/ros/melodic/include/rosbag/stream.h:46, from /opt/ros/melodic/include/rosbag/chunked_file.h:46, from /opt/ros/melodic/include/rosbag/bag.h:41, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/utils/dataset_reader.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:36, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/trajectory_manager.cpp:21: /usr/include/lz4.h:196:57: note: previous declaration as ‘typedef struct LZ4_stream_t LZ4_stream_t’ typedef struct { long long table[LZ4_STREAMSIZE_U64]; } LZ4_stream_t; ^~~~ In file included from /usr/include/flann/util/serialization.h:9:0, from /usr/include/flann/util/matrix.h:35, from /usr/include/flann/flann.hpp:41, from /usr/include/pcl-1.8/pcl/kdtree/flann.h:50, from /usr/include/pcl-1.8/pcl/kdtree/kdtree_flann.h:45, from /usr/include/pcl-1.8/pcl/search/kdtree.h:44, from /usr/include/pcl-1.8/pcl/registration/registration.h:48, from /home/jxl/catkin_li_calib/src/ndt_omp/include/pclomp/ndt_omp.h:44, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/surfel_association.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:37, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/trajectory_manager.cpp:21: /usr/include/flann/ext/lz4.h:249:72: error: conflicting declaration ‘typedef struct LZ4_streamDecode_t LZ4_streamDecode_t’ typedef struct { unsigned long long table[LZ4_STREAMDECODESIZE_U64]; } LZ4_streamDecode_t; ^~~~~~ In file included from /opt/ros/melodic/include/roslz4/lz4s.h:38:0, from /opt/ros/melodic/include/rosbag/stream.h:46, from /opt/ros/melodic/include/rosbag/chunked_file.h:46, from /opt/ros/melodic/include/rosbag/bag.h:41, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/utils/dataset_reader.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:36, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/trajectory_manager.cpp:21: /usr/include/lz4.h:249:72: note: previous declaration as ‘typedef struct LZ4_streamDecode_t LZ4_streamDecode_t’ typedef struct { unsigned long long table[LZ4_STREAMDECODESIZE_U64]; } LZ4_streamDecode_t; ^~~~~~ In file included from /usr/include/flann/util/serialization.h:9:0, from /usr/include/flann/util/matrix.h:35, from /usr/include/flann/flann.hpp:41, from /usr/include/pcl-1.8/pcl/kdtree/flann.h:50, from /usr/include/pcl-1.8/pcl/kdtree/kdtree_flann.h:45, from /usr/include/pcl-1.8/pcl/search/kdtree.h:44, from /usr/include/pcl-1.8/pcl/registration/registration.h:48, from /home/jxl/catkin_li_calib/src/ndt_omp/include/pclomp/ndt_omp.h:44, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/surfel_association.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:37, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/inertial_initializer.h:26, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/inertial_initializer.cpp:21: /usr/include/flann/ext/lz4.h:196:57: error: conflicting declaration ‘typedef struct LZ4_stream_t LZ4_stream_t’ typedef struct { long long table[LZ4_STREAMSIZE_U64]; } LZ4_stream_t; ^~~~ In file included from /opt/ros/melodic/include/roslz4/lz4s.h:38:0, from /opt/ros/melodic/include/rosbag/stream.h:46, from /opt/ros/melodic/include/rosbag/chunked_file.h:46, from /opt/ros/melodic/include/rosbag/bag.h:41, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/utils/dataset_reader.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:36, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/inertial_initializer.h:26, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/inertial_initializer.cpp:21: /usr/include/lz4.h:196:57: note: previous declaration as ‘typedef struct LZ4_stream_t LZ4_stream_t’ typedef struct { long long table[LZ4_STREAMSIZE_U64]; } LZ4_stream_t; ^~~~ In file included from /usr/include/flann/util/serialization.h:9:0, from /usr/include/flann/util/matrix.h:35, from /usr/include/flann/flann.hpp:41, from /usr/include/pcl-1.8/pcl/kdtree/flann.h:50, from /usr/include/pcl-1.8/pcl/kdtree/kdtree_flann.h:45, from /usr/include/pcl-1.8/pcl/search/kdtree.h:44, from /usr/include/pcl-1.8/pcl/registration/registration.h:48, from /home/jxl/catkin_li_calib/src/ndt_omp/include/pclomp/ndt_omp.h:44, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/surfel_association.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:37, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/inertial_initializer.h:26, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/inertial_initializer.cpp:21: /usr/include/flann/ext/lz4.h:249:72: error: conflicting declaration ‘typedef struct LZ4_streamDecode_t LZ4_streamDecode_t’ typedef struct { unsigned long long table[LZ4_STREAMDECODESIZE_U64]; } LZ4_streamDecode_t; ^~~~~~ In file included from /opt/ros/melodic/include/roslz4/lz4s.h:38:0, from /opt/ros/melodic/include/rosbag/stream.h:46, from /opt/ros/melodic/include/rosbag/chunked_file.h:46, from /opt/ros/melodic/include/rosbag/bag.h:41, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/utils/dataset_reader.h:24, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/trajectory_manager.h:36, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/include/core/inertial_initializer.h:26, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/inertial_initializer.cpp:21: /usr/include/lz4.h:249:72: note: previous declaration as ‘typedef struct LZ4_streamDecode_t LZ4_streamDecode_t’ typedef struct { unsigned long long table[LZ4_STREAMDECODESIZE_U64]; } LZ4_streamDecode_t; ^~~~~~ In file included from /usr/include/pcl-1.8/pcl/sample_consensus/sac_model.h:52:0, from /usr/include/pcl-1.8/pcl/sample_consensus/sac.h:45, from /usr/include/pcl-1.8/pcl/segmentation/sac_segmentation.h:49, from /home/jxl/catkin_li_calib/src/lidar_IMU_calib/src/core/surfel_association.cpp:23: /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h: In function ‘void static_initialization_and_destruction_0(int, int)’: /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: warning: ‘pcl::SAC_SAMPLE_SIZE’ is deprecated: This map is deprecated and is kept only to prevent breaking existing user code. Starting from PCL 1.8.0 model sample size is a protected member of the SampleConsensusModel class [-Wdeprecated-declarations] SAC_SAMPLE_SIZE (sample_size_pairs, sample_size_pairs + sizeof (sample_size_pairs) / sizeof (SampleSizeModel)); ^~~~~~~ /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: note: declared here In file included from /usr/include/pcl-1.8/pcl/sample_consensus/sac_model.h:52:0, from /usr/include/pcl-1.8/pcl/sample_consensus/sac.h:45, from /usr/include/pcl-1.8/pcl/sample_consensus/ransac.h:44, from /usr/include/pcl-1.8/pcl/registration/icp.h:45, from /usr/include/pcl-1.8/pcl/registration/gicp.h:44, from /home/jxl/catkin_li_calib/src/ndt_omp/apps/align.cpp:7: /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h: In function ‘void __static_initialization_and_destruction_0(int, int)’: /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: warning: ‘pcl::SAC_SAMPLE_SIZE’ is deprecated: This map is deprecated and is kept only to prevent breaking existing user code. Starting from PCL 1.8.0 model sample size is a protected member of the SampleConsensusModel class [-Wdeprecated-declarations] SAC_SAMPLE_SIZE (sample_size_pairs, sample_size_pairs + sizeof (sample_size_pairs) / sizeof (SampleSizeModel)); ^~~~~~~ /usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: note: declared here lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/build.make:62: recipe for target 'lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/trajectory_manager.cpp.o' failed make[2]: [lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/trajectory_manager.cpp.o] Error 1 make[2]: 正在等待未完成的任务.... lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/build.make:86: recipe for target 'lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/inertial_initializer.cpp.o' failed make[2]: [lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/src/core/inertial_initializer.cpp.o] Error 1 CMakeFiles/Makefile2:3374: recipe for target 'lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/all' failed make[1]: [lidar_IMU_calib/CMakeFiles/li_calib_lib.dir/all] Error 2 make[1]: 正在等待未完成的任务.... [ 66%] Linking CXX executable /home/jxl/catkin_li_calib/devel/lib/ndt_omp/align [ 66%] Built target align Makefile:140: recipe for target 'all' failed make: [all] Error 2 Invoking "make -j12 -l12" failed jxl@lenevo:~/catkin_li_calib$

Thanks for your help!

icameling commented 4 years ago

May the solution from here helps you.