1、ubuntu对应安装ros的版本如下:
2、安装:
安装步骤参考官网:
noetic/Installation/Ubuntu - ROS Wiki
注意:
上面的步骤有可能报错:gpg: no valid OpenPGP data found.
解决办法:手动下载ros的keys,然后添加,具体命令如下:
wget http://packages.ros.org/ros.key
sudo apt-key add ros.key
sudo apt-get update --fix-missing
3、ros入门:
文档可以参考官网:
讲解不错的链接如下:
ROS工程结构及程序运行步骤,ROS编写cpp节点创建_臭皮匠-hfW的博客-CSDN博客
Slam学习笔记——ROS踩坑记录_starvapour的博客-CSDN博客
附加知识:
1、VSCode中配置ROS的CMakeLists配置可参考下文:
关于ROS包中CMakeList.txt中几个常用的命令的作用 ——————(一)_hymwgk的博客-CSDN博客
2、demo如下:
CMakelists中添加配置ROS语句为下面带仅ROS注释的几句,复制带ROS的几句即可完成VSCode中ROS的配置;其他的配置是项目中的CMakelist配置文件,如需要参考整个工程,可参考VSCode中配置ros环境-C++文档类资源-CSDN文库
cmake_minimum_required(VERSION 3.0) #设置最小需要的版本
project(MAIN) #生成的工程名---Must------
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") #增加c++11的编译环境
add_definitions("-Wall -g") #带调试信息的编译s
set(HELPER_DIR ${PROJECT_SOURCE_DIR}/Helper) #设置变量信息,子文件夹的CMakeLists也可见
set(BASIC_DIR ${PROJECT_SOURCE_DIR}/BasicLogic/include)
set(UILOGIC_DIR ${PROJECT_SOURCE_DIR}/UILogic/include)
#ROS头文件查找返回到catkin_INCLUDE_DIRS,库文件返回到catkin_LIBRARIES
find_package(catkin REQUIRED COMPONENTS
roscpp
rospy
std_msgs
message_generation
)
add_subdirectory(BasicLogic) #编译子文件夹的CMakeLists.txt文件。子文件夹名称必须和子文件夹名称相同
#ROS头文件
include_directories(${PROJECT_SOURCE_DIR} ${BASIC_DIR} ${UILOGIC_DIR}
${catkin_INCLUDE_DIRS}
) #头文件夹路径的包含路径 ---Must------
add_executable(${PROJECT_NAME} ./UILogic/src/UILogic.cpp main.cpp) #生成可执行文件的名称,和 编译的cpp文件---Must------
#ROS的静态库${catkin_LIBRARIES}
target_link_libraries(${PROJECT_NAME} BasicLogic
${catkin_LIBRARIES}
) #链接库操作,--可执行文件名称,链接库文件名称(必须和子文件生成库文件名称一致)。