在r3live编译过程中,根据
R3LIVE编译运行和代码分析_52HZ、的博客-CSDN博客
中进行相关环境的配置后进行catkin_make
中途报错
CMakeFiles/r3live_mapping.dir/src/r3live.cpp.o:(.data.rel.ro._ZTVN3pcl9VoxelGridINS_15PointXYZINormalEEE[_ZTVN3pcl9VoxelGridINS_15PointXYZINormalEEE]+0x48):对‘pcl::VoxelGrid<pcl::PointXYZINormal>::applyFilter(pcl::PointCloud<pcl::PointXYZINormal>&)’未定义的引用
尝试使用GPT解决
以为问题为Ubuntu18.04中ros自带的pcl1.8无该函数,安装pcl1.10中重链接,但仍报此错
后续再次检查cmakelist发现
target_link_libraries(r3live_mapping
${catkin_LIBRARIES}
${Boost_LIBRARIES}
${Boost_FILESYSTEM_LIBRARY}
${Boost_SERIALIZATION_LIBRARY} # serialization
${OpenCV_LIBRARIES}
# ${OpenMVS_LIBRARIES}
pcl_common
pcl_io)
中未正确链接pcl library
改为
target_link_libraries(r3live_mapping
${catkin_LIBRARIES}
${Boost_LIBRARIES}
${Boost_FILESYSTEM_LIBRARY}
${Boost_SERIALIZATION_LIBRARY} # serialization
${OpenCV_LIBRARIES}
${PCL_LIBRARIES}
# ${OpenMVS_LIBRARIES}
pcl_common
pcl_io)
问题成功解决 编译成功