高翔:《自动驾驶与机器人中的SLAM技术 》-Slam_in_autonomous_driving 编译过程中遇到的问题

使用的环境是ubuntu20.04

问题1.安装g2o没有问题,不过在编译整个项目工程时候报错:

"openmp_mutex.h: 30:10: fatal error: g2o/config.h: No such file or directory":

解决办法:

复制代码
只需要将/thirdparty/g2o/build/g2o下的config.h放到/thirdparty/g2o下:

问题2. No rule to make target 'gmock',needed by '../bin/test_preintegration' . stop

src/ch4/CMakeFiles/test_preintegration.dir/all] Error 2:

解决办法:将/ch4/CmakeList.txt文件内容修改如下:

查找 Google Test,它应该也包含了 Google Mock

find_package(GTest REQUIRED)

include_directories(${GTEST_INCLUDE_DIRS})

添加您的库

add_library(${PROJECT_NAME}.ch4

gins_pre_integ.cc

imu_preintegration.cc

g2o_types.cc

)

添加您的测试可执行文件

add_executable(test_preintegration test_preintegration.cc)

链接 Google Test (它应该包含了 gmock) 以及其他依赖项

target_link_libraries(test_preintegration

${GTEST_BOTH_LIBRARIES}

pthread glog gflags {PROJECT_NAME}.ch4 {PROJECT_NAME}.ch3 ${PROJECT_NAME}.common

)

添加测试

add_test(NAME test_preintegration COMMAND test_preintegration)

添加其他可执行文件

add_executable(run_gins_pre_integ run_gins_pre_integ.cc)

target_link_libraries(run_gins_pre_integ

${PROJECT_NAME}.ch3

${PROJECT_NAME}.ch4

${G2O_LIBS}

问题3.No rule to make target 'gmock',needed by '../bin/test_nn' . stop

CMakeFiles/Makefile2:4227:src/ch5/CMakeFiles/test_nn.dir/all]

修改/ch5/CMakeList.txt 内容为:

find_package(GTest REQUIRED)

add_executable(point_cloud_load_and_vis point_cloud_load_and_vis.cc)

target_link_libraries(point_cloud_load_and_vis

${PCL_LIBRARIES}

${GLOG_LIBRARIES}

gflags

)

add_executable(pcd_to_bird_eye pcd_to_bird_eye.cc)

target_link_libraries(pcd_to_bird_eye

${PCL_LIBRARIES}

${GLOG_LIBRARIES}

${OpenCV_LIBS}

gflags

)

add_executable(scan_to_range_image scan_to_range_image.cc)

target_link_libraries(scan_to_range_image

${PCL_LIBRARIES}

${GLOG_LIBRARIES}

${OpenCV_LIBS}

gflags

)

add_library(${PROJECT_NAME}.ch5

bfnn.cc

kdtree.cc

octo_tree.cc

)

target_link_libraries(${PROJECT_NAME}.ch5

tbb

)

add_executable(linear_fitting linear_fitting.cc)

target_link_libraries(linear_fitting

${PCL_LIBRARIES}

${GLOG_LIBRARIES}

${OpenCV_LIBS}

gflags

)

add_executable(test_nn test_nn.cc)

add_test(NAME test_nn COMMAND test_nn)

target_link_libraries(test_nn

GTest::GTest

GTest::Main

glog

gflags

${PROJECT_NAME}.ch5

${PROJECT_NAME}.common

${PCL_LIBRARIES}

tbb

参考博文:

https://blog.csdn.net/ht_lf/article/details/134185779

相关推荐
古月开发7 小时前
旧手机变身 AI 作业监督器:低成本家庭学习解决方案
人工智能·学习·智能手机
Arenaschi7 小时前
关于GPT的版特点
java·网络·人工智能·windows·python·gpt
邂逅and回眸7 小时前
AI Agent 四大核心模块深度拆解:ReAct、Planning、Memory 与 Tool Use
人工智能
陕西企来客7 小时前
陕西旅游酒店 GEO 服务市场深度调查:AI 搜索优化格局与真实服务真相
大数据·人工智能·旅游
薛定猫AI7 小时前
【深度解析】Hermes Agent Velocity Release:长期记忆、自进化技能与多智能体任务编排实践
网络·人工智能
五月君_7 小时前
继 React、Vue 之后,Three.js 也有 Skills 了!AI 写 3D 终于不“晕”了
javascript·vue.js·人工智能·react.js·3d
小崽崽17 小时前
如何实现React 19+Vite+TypeScript技术栈告别高薪主播!从零打造 24 小时“AI 销冠”:星云数字人直播间全链路实战
人工智能·react.js·typescript
土星云SaturnCloud7 小时前
基于铁塔基站的反无人机系统应用场景分析:边缘计算重构低空防御体系
服务器·人工智能·ai·边缘计算
zhang_adrian7 小时前
【使用Github Copilot自动按规范文档生成全部代码】
人工智能·github·copilot
薛定猫AI7 小时前
【深度解析】Claude Opus 编码模型的工程化使用:长上下文、Agent 工作流与代码审查实战
人工智能