Ubuntu 22.04安装和使用ROS1可行吗

可行。


测试结果

ROS1可以一直使用下去的,这一点不用担心。Ubuntu会一直维护的。


简要介绍 

Debian发行版^_^ 

AI:在Ubuntu 22.04上安装ROS1是可行的,但需要注意ROS1对Ubuntu的支持只到20.04。因此,如果要在22.04上安装ROS1,只能从源码编译安装。

目前的机器人相关操作系统还是面向开发者的(developer)。

与电脑和手机操作系统差异最大的地方,电脑手机操作系统是面向用户的(user),零基础也可以学会用。

机器人相关操作系统何时才能普及呢?只有零基础用户可以使用,才会有普及的可能。

ROS1/2机器人课程的价值和规模


系统版本 

安装说明

由于ROS官方在Ubuntu 20.04只提供了最新版本Noetic的支持。后续Ubuntu的ROS1安装没有版本号了。

当然由于是Ubuntu直接支持,也不需要key之类的,直接安装即可使用。

直接安装即可:

sudo apt install ros-desktop-full-dev

sudo apt install ros-desktop-full-dev

其他方案

源码编译使用:

https://github.com/lucasw/ros_from_src

ros-o
This organization provides an umbrella to maintain central ROS One projects past noetic. Please contribute your time.

不用ROS1,也可以的。

ros2的功能包:

ros2@ros2-Aspire-4741:~$ sudo apt install ros-humble-
Display all 1935 possibilities? (y or n) 


典型问题

这时候会出现问题:

ros2@ros2-Aspire-4741:~$ sudo apt install ros-desktop-full-dev 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 ros-core-dev : Depends: catkin but it is not installable
E: Unable to correct problems, you have held broken packages.
ros2@ros2-Aspire-4741:~$ 

Debian和Ubuntu Upstream中的软件包
由于Jochen Sprickerhof和Leopold Palomo Avellaneda的辛勤努力,现在Debian不稳定和Ubuntu Xenial的上游有ROS包,可以从Debian和Ubuntu的主要存储库安装。以下是Jochen在2015年ROSCon上的简短概述:https://vimeo.com/142151399#t=29m15s.
大多数已满桌面的软件包都可用(软件包状态概述:https://wiki.debian.org/DebianScience/Robotics/ROS/Packages)。最初的ROS包已被修改为遵循Debian指南,其中包括将包拆分为多个部分,在某些情况下更改名称,根据FHS指南安装到/usr,以及在共享库上使用soversion。例如,roslib被称为python-roslib,roscpp在libroscpp-dev和libroscpp0d包中。
与来自packages.ROS.org的OSRF提供的ROS包不同,上游存储库中的包没有附加到特定的ROS分布。相反,它们代表了一个滚动版本,将在Debian不稳定版本中定期更新,然后在不同的点定期锁定到下游Debian和Ubuntu发行版中。
不要搅乱
我们强烈建议不要在同一系统上混合来自上游Debian/Uubuntu和packages.ROS.org的ROS包。在某些情况下,这种混合系统可以正常工作,但两组包之间可能存在负面交互。我们正在与Jochen和朋友们合作,通过文档和包冲突规范将出现问题的可能性降至最低,但我们预计仍会存在一些风险,包括一些相当微妙的问题。
因此,我们建议您选择从上游安装软件包或从packages.ros.org安装软件包,但不能两者都安装。您不仅不应该同时安装来自这两个源的软件包,而且如果您打算使用上游软件包(而不是来自packages.ros.org),那么您甚至不应该在您的apt源中(即在/etc/apt/sources*中的任何文件中)有packages.rose.org条目,因为这可能会导致两个源之间名称重叠的软件包混合,例如python-rospkg。
已知差异
与packages.ROS.org的ROS包相比,上游ROS包存在一些差异,人们应该注意:
*程序包集不完整
不出所料,并非所有软件包都能在上游获得。目前,桌面完整版的软件包已经可用,我们预计随着时间的推移,还会有更多的软件包可用。


解决方案

If the ROS 2 apt repository is in the available apt repositories (/etc/apt/sources.list.d), no ROS 1 packages will be installable. The error will be:

$ apt install ros-core-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:The following packages have unmet dependencies:ros-core-dev : Depends: catkin but it is not installable
E: Unable to correct problems, you have held broken packages.

Copy to clipboard

To correct this, remove packages.ros.org from your sources.list. If you were following the ROS 2 installation guide, simply remove /etc/apt/sources.list.d/ros2.list

要解决此问题,请从sources.list中删除packages.ros.org。如果您遵循ros 2安装指南,只需删除/etc/apt/sources.list.d/ros2.list 

For now, to support ros1_bridge, follow the instructions below for building ROS 2 from source.

ROS 2 Humble(和Rolling)在Ubuntu 22.04 Jammy Jellyfish上的发布标志着ROS 2首次在没有正式ROS 1发布的平台上发布。虽然ROS 1 Noetic将在其长期支持窗口期间继续得到支持,但它只针对Ubuntu 20.04。或者,Debian和Ubuntu中存在ROS 1软件包的上游变体,ROS维护者没有将其作为官方发行版进行维护。
本指南概述了目前在Ubuntu 22.04 Jammy Jellyfish上桥接ROS 2版本和这些上游包的机制。这为那些仍然依赖ROS1,但希望迁移到更新的ROS2和Ubuntu版本的用户提供了一条迁移路径。 

问题解决完成之后,就可以安装ros1了。

出现如下部分,选择y就可以安装ros1了。非常方便,可以和ros2一起使用,但需要一些配置。

sudo apt install ros-desktop-full-dev 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:binfmt-support bzip2-doc catkin cl-actionlib cl-actionlib-msgs cl-bondcl-diagnostic-msgs cl-dynamic-reconfigure cl-geometry-msgs cl-map-msgscl-move-base-msgs cl-nav-msgs cl-nodelet cl-pcl-msgs cl-polled-cameracl-roscpp-msg cl-rosgraph-msgs cl-sensor-msgs cl-shape-msgs cl-std-msgscl-std-srvs cl-stereo-msgs cl-tf cl-tf2-msgs cl-tf2-srvs cl-topic-toolscl-trajectory-msgs cl-visualization-msgs cmake cmake-data cmake-extras curldefault-jdk default-jdk-headless default-libmysqlclient-dev dh-elpa-helperdocutils-common freeglut3 gdal-data graphviz hdf5-helpers i965-va-driveribverbs-providers icu-devtools image-transport-tools intel-media-va-driverjavascript-common joint-state-publisher joint-state-publisher-gui libaacs0libactionlib-dev libactionlib-msgs-dev libactionlib1d libaec-dev libaec0libangles-dev libann0 libaom-dev libaom3 libapr1 libapr1-dev libaprutil1libaprutil1-dev libarmadillo-dev libarmadillo10 libarpack2 libarpack2-devlibassimp-dev libassimp5 libassuan-dev libavcodec-dev libavcodec58libavformat-dev libavformat58 libavutil-dev libavutil56 libb64-0d libb64-devlibbdplus0 libblas-dev libblas3 libblosc-dev libblosc1 libbluray2libbond-dev libbondcpp-dev libbondcpp1d libboost-all-dev libboost-atomic-devlibboost-atomic1.74-dev libboost-atomic1.74.0 libboost-chrono-devlibboost-chrono1.74-dev libboost-chrono1.74.0 libboost-container-devlibboost-container1.74-dev libboost-container1.74.0 libboost-context-devlibboost-context1.74-dev libboost-context1.74.0 libboost-coroutine-devlibboost-coroutine1.74-dev libboost-coroutine1.74.0 libboost-date-time-devlibboost-date-time1.74-dev libboost-date-time1.74.0 libboost-devlibboost-exception-dev libboost-exception1.74-dev libboost-fiber-devlibboost-fiber1.74-dev libboost-fiber1.74.0 libboost-filesystem-devlibboost-filesystem1.74-dev libboost-graph-dev libboost-graph-parallel-devlibboost-graph-parallel1.74-dev libboost-graph-parallel1.74.0libboost-graph1.74-dev libboost-graph1.74.0 libboost-iostreams-devlibboost-iostreams1.74-dev libboost-locale-dev libboost-locale1.74-devlibboost-log-dev libboost-log1.74-dev libboost-log1.74.0 libboost-math-devlibboost-math1.74-dev libboost-math1.74.0 libboost-mpi-devlibboost-mpi-python-dev libboost-mpi-python1.74-devlibboost-mpi-python1.74.0 libboost-mpi1.74-dev libboost-mpi1.74.0libboost-nowide-dev libboost-nowide1.74-dev libboost-nowide1.74.0libboost-numpy-dev libboost-numpy1.74-dev libboost-numpy1.74.0libboost-program-options-dev libboost-program-options1.74-devlibboost-program-options1.74.0 libboost-python-dev libboost-python1.74-devlibboost-python1.74.0 libboost-random-dev libboost-random1.74-devlibboost-random1.74.0 libboost-regex-dev libboost-regex1.74-devlibboost-serialization-dev libboost-serialization1.74-devlibboost-serialization1.74.0 libboost-stacktrace-devlibboost-stacktrace1.74-dev libboost-stacktrace1.74.0 libboost-system-devlibboost-system1.74-dev libboost-system1.74.0 libboost-test-devlibboost-test1.74-dev libboost-test1.74.0 libboost-thread-devlibboost-thread1.74-dev libboost-timer-dev libboost-timer1.74-devlibboost-timer1.74.0 libboost-tools-dev libboost-type-erasure-devlibboost-type-erasure1.74-dev libboost-type-erasure1.74.0 libboost-wave-devlibboost-wave1.74-dev libboost-wave1.74.0 libboost1.74-devlibboost1.74-tools-dev libbrotli-dev libbullet-dev libbullet3.06 libbz2-devlibcaf-openmpi-3 libcamera-calibration-parsers-devlibcamera-calibration-parsers0d libcamera-info-manager-devlibcamera-info-manager0d libcdt5 libcfitsio-dev libcfitsio-doc libcfitsio9libcgraph6 libcharls-dev libcharls2 libchromaprint1 libclang1-14libclass-loader-dev libclass-loader1d libcoarrays-openmpi-dev libcodec2-1.0libcollada-dom-dev libcollada-dom2.5-dp0 libcollada-parser-devlibcollada-parser1d libcollada-urdf-dev libcollada-urdf1dlibconsole-bridge-dev libconsole-bridge1.0 libcpp-common0d libcurl4libcurl4-openssl-dev libcv-bridge-dev libcv-bridge2d libdav1d-dev libdav1d5libdc1394-25 libdc1394-dev libde265-0 libde265-dev libdecor-0-0libdecor-0-plugin-1-cairo libdeflate-dev libdiagnostic-msgs-devlibdouble-conversion-dev libdouble-conversion3 libdraco-dev libdraco4libdynamic-reconfigure-config-init-mutex-devlibdynamic-reconfigure-config-init-mutex0d libegl-devlibeigen-stl-containers-dev libeigen3-dev libevent-core-2.1-7 libevent-devlibevent-extra-2.1-7 libevent-openssl-2.1-7 libevent-pthreads-2.1-7libexif-dev libexif-doc libexpat1-dev libfabric1 libflann-dev libflann1.9libfontconfig-dev libfontconfig1-dev libfreeimage3 libfreetype-devlibfreetype6 libfreetype6-dev libfreexl-dev libfreexl1 libfyba-dev libfyba0libgdal-dev libgdal30 libgdcm-dev libgdcm3.0 libgeometric-shapes-devlibgeometric-shapes5d libgeometry-msgs-dev libgeos-c1v5 libgeos-devlibgeos3.10.2 libgeotiff-dev libgeotiff5 libgif-dev libgl-devlibgl1-mesa-dev libgl2ps-dev libgl2ps1.4 libgles-dev libgles1 libglew-devlibglew2.2 libglu1-mesa-dev libglvnd-core-dev libglvnd-dev libglx-devlibgme0 libgpg-error-dev libgpgme-dev libgpgme11 libgphoto2-dev libgsm1libgts-0.7-5 libgts-bin libgvc6 libgvpr2 libhdf4-0-alt libhdf4-alt-devlibhdf5-103-1 libhdf5-cpp-103-1 libhdf5-dev libhdf5-fortran-102libhdf5-hl-100 libhdf5-hl-cpp-100 libhdf5-hl-fortran-100 libhdf5-mpi-devlibhdf5-openmpi-103-1 libhdf5-openmpi-cpp-103-1 libhdf5-openmpi-devlibhdf5-openmpi-fortran-102 libhdf5-openmpi-hl-100libhdf5-openmpi-hl-cpp-100 libhdf5-openmpi-hl-fortran-100 libheif-devlibheif1 libhwloc-dev libhwloc-plugins libhwloc15 libibverbs-dev libibverbs1libice-dev libicu-dev libigdgmm12 libilmbase-dev libilmbase25libimage-geometry-dev libimage-geometry1d libimage-transport-devlibimage-transport0d libinteractive-markers-dev libinteractive-markers2dlibjbig-dev libjoint-state-listener1d libjpeg-dev libjpeg-turbo8-devlibjpeg8-dev libjs-jquery libjs-jquery-ui libjs-sphinxdoc libjs-underscorelibjson-c-dev libjsoncpp-dev libjsoncpp25 libjxr0 libkdl-parser-devlibkdl-parser1d libkml-dev libkmlbase1 libkmlconvenience1 libkmldom1libkmlengine1 libkmlregionator1 libkmlxsd1 liblab-gamut1 liblapack-devliblapack3 liblaser-geometry-dev liblaser-geometry0d libldap-2.5-0libldap-dev libldap2-dev liblept5 libllvm14 liblog4cxx-dev liblog4cxx12liblz4-dev liblzma-dev libmap-msgs-dev libmd4c0 libmessage-filters-devlibmessage-filters1d libmfx1 libminizip-dev libminizip1libmove-base-msgs-dev libmysqlclient-dev libmysqlclient21 libnav-msgs-devlibnetcdf-c++4 libnetcdf-cxx-legacy-dev libnetcdf-dev libnetcdf19libnl-3-dev libnl-route-3-dev libnodelet-dev libnodelet-topic-tools-devlibnodeletlib-dev libnodeletlib-tools libnodeletlib1d libnorm1 libnuma-devliboctomap-dev liboctomap1.9 libodbc2 libodbccr2 libodbcinst2 libogdi-devlibogdi4.1 libogg-dev libogre-1.12-dev libogre1.12.10 libopencv-calib3d-devlibopencv-calib3d4.5d libopencv-contrib-dev libopencv-contrib4.5dlibopencv-core-dev libopencv-core4.5d libopencv-dev libopencv-dnn-devlibopencv-dnn4.5d libopencv-features2d-dev libopencv-features2d4.5dlibopencv-flann-dev libopencv-flann4.5d libopencv-highgui-devlibopencv-highgui4.5d libopencv-imgcodecs-dev libopencv-imgcodecs4.5dlibopencv-imgproc-dev libopencv-imgproc4.5d libopencv-ml-devlibopencv-ml4.5d libopencv-objdetect-dev libopencv-objdetect4.5dlibopencv-photo-dev libopencv-photo4.5d libopencv-shape-devlibopencv-shape4.5d libopencv-stitching-dev libopencv-stitching4.5dlibopencv-superres-dev libopencv-superres4.5d libopencv-video-devlibopencv-video4.5d libopencv-videoio-dev libopencv-videoio4.5dlibopencv-videostab-dev libopencv-videostab4.5d libopencv-viz-devlibopencv-viz4.5d libopencv4.5-java libopencv4.5d-jni libopenexr-devlibopenexr25 libopengl-dev libopenjp2-7-dev libopenmpi-dev libopenmpi3libopenmpt0 libopenni-dev libopenni-sensor-pointclouds0 libopenni0libopenni2-0 libopenni2-dev liborocos-kdl-dev liborocos-kdl1.5 libpathplan4libpcl-apps1.12 libpcl-common1.12 libpcl-conversions-dev libpcl-devlibpcl-features1.12 libpcl-filters1.12 libpcl-io1.12 libpcl-kdtree1.12libpcl-keypoints1.12 libpcl-ml1.12 libpcl-msgs-dev libpcl-octree1.12libpcl-outofcore1.12 libpcl-people1.12 libpcl-recognition1.12libpcl-registration1.12 libpcl-sample-consensus1.12 libpcl-search1.12libpcl-segmentation1.12 libpcl-stereo1.12 libpcl-surface1.12libpcl-tracking1.12 libpcl-visualization1.12 libpcre16-3 libpcre2-16-0libpcre2-dev libpcre2-posix3 libpcre3-dev libpcre32-3 libpcrecpp0v5libpgm-5.3-0 libpmix-dev libpmix2 libpng-dev libpng-tools libpoco-devlibpocoactiverecord80 libpococrypto80 libpocodata80 libpocodatamysql80libpocodataodbc80 libpocodatapostgresql80 libpocodatasqlite80libpocoencodings80 libpocofoundation80 libpocojson80 libpocojwt80libpocomongodb80 libpoconet80 libpoconetssl80 libpocoredis80 libpocoutil80libpocoxml80 libpocozip80 libpolled-camera-dev libpolled-camera0dlibpoppler-cpp0v5 libpoppler-dev libpoppler-glib8 libpoppler-private-devlibpoppler118 libpq-dev libpq5 libproj-dev libproj22 libpsm-infinipath1libpsm2-2 libpthread-stubs0-dev libpython3-dev libpython3.10libpython3.10-dev libpython3.10-minimal libpython3.10-stdlib libqhull-devlibqhull-r8.0 libqhull8.0 libqhullcpp8.0 libqt5concurrent5 libqt5core5alibqt5dbus5 libqt5designer5 libqt5designercomponents5 libqt5gui5 libqt5help5libqt5network5 libqt5opengl5 libqt5opengl5-dev libqt5positioning5libqt5printsupport5 libqt5qml5 libqt5qmlmodels5 libqt5qmlworkerscript5libqt5quick5 libqt5quickparticles5 libqt5quickshapes5 libqt5quicktest5libqt5quickwidgets5 libqt5sensors5 libqt5sql5 libqt5sql5-sqlite libqt5svg5libqt5test5 libqt5webchannel5 libqt5webkit5 libqt5webkit5-dev libqt5widgets5libqt5xml5 librabbitmq4 librandom-numbers-dev librandom-numbers0dlibraw1394-dev libraw1394-tools librdmacm1 libresource-retriever-devlibresource-retriever0d librhash0 librobot-state-publisher-solver1dlibros-rosgraph-msgs-dev librosbag-dev librosbag-storage-devlibrosbag-storage4d librosbag4d librosconsole-bridge-devlibrosconsole-bridge0d librosconsole-dev librosconsole3d libroscpp-core-devlibroscpp-dev libroscpp-msg-dev libroscpp-serialization0d libroscpp4dlibroslib-dev libroslib0d libroslz4-1d libroslz4-dev librospack-devlibrospack0d librostest-dev librostime1d librttopo-dev librttopo1librviz-dev librviz6d libsctp-dev libsctp1 libsdl2-2.0-0 libsensor-msgs-devlibserf-1-1 libshape-msgs-dev libshine3 libsm-dev libsmc-dev libsnappy1v5libsocket++1 libspatialite-dev libspatialite7 libsqlite3-devlibsrt1.4-gnutls libssh-gcrypt-4 libssl-dev libssl3 libstb0 libstd-msgs-devlibstd-srvs-dev libstereo-msgs-dev libsuperlu-dev libsuperlu5 libsvn1libswresample-dev libswresample3 libswscale-dev libswscale5 libsz2libtbb-dev libtbb12 libtbb2 libtbbmalloc2 libtesseract4libtf-conversions-dev libtf-conversions0d libtf-dev libtf1d libtf2-2dlibtf2-bullet-dev libtf2-dev libtf2-eigen-dev libtf2-geometry-msgs-devlibtf2-kdl-dev libtf2-msgs-dev libtf2-ros-dev libtf2-ros1dlibtf2-sensor-msgs-dev libtheora-dev libtiff-dev libtiff5 libtiffxx5libtinyxml-dev libtinyxml2-9 libtinyxml2-dev libtinyxml2.6.2v5libtopic-tools-dev libtopic-tools2d libtrajectory-msgs-dev libucx0libudfread0 liburdf-dev liburdf-parser-plugin-dev liburdf1d liburdfdom-devliburdfdom-headers-dev liburdfdom-model-state3.0 liburdfdom-model3.0liburdfdom-sensor3.0 liburdfdom-world3.0 liburiparser-dev liburiparser1libusb-1.0-0-dev libusb-1.0-doc libutf8proc2 libutfcpp-dev libva-drm2libva-x11-2 libva2 libvdpau1 libvisualization-msgs-dev libvtk9-devlibvtk9-java libvtk9-qt-dev libvtk9.1 libvtk9.1-qt libvulkan-dev libwebp-devlibwebp7 libwebpdemux2 libwebpmux3 libx11-6 libx11-dev libx11-xcb1libx264-163 libx265-199 libx265-dev libxau-dev libxcb-xinerama0libxcb-xinput0 libxcb1-dev libxdmcp-dev libxerces-c-dev libxerces-c3.2libxext-dev libxft-dev libxml2 libxml2-dev libxmlrpcpp-dev libxmlrpcpp3dlibxnvctrl0 libxrender-dev libxss-dev libxt-dev libxvidcore4 libyaml-cpp0.7libzmq5 libzstd-dev libzvbi-common libzvbi0 libzzip-0-13 mercurialmercurial-common mesa-va-drivers mesa-vdpau-drivers mpi-default-binmpi-default-dev mysql-common opencv-data openjdk-11-jdkopenjdk-11-jdk-headless openjdk-11-jre openjdk-11-jre-headless openmpi-binopenmpi-common openni-utils pcl-tools pkg-config pluginlib-dev poppler-utilsproj-bin proj-data pyqt5-dev python3-actionlib python3-actionlib-msgspython3-bond python3-bondpy python3-catkin python3-catkin-pkgpython3-cv-bridge python3-defusedxml python3-dev python3-diagnostic-msgspython3-docutils python3-dynamic-reconfigure python3-empy python3-gencpppython3-genlisp python3-genmsg python3-genpy python3-geometry-msgspython3-gnupg python3-image-geometry python3-interactive-markerspython3-laser-geometry python3-map-msgs python3-message-filterspython3-move-base-msgs python3-mpi4py python3-nav-msgs python3-nodeletpython3-nodelet-topic-tools python3-numpy python3-opencv python3-pcl-msgspython3-polled-camera python3-pycryptodome python3-pygments python3-pykdlpython3-pyqt5 python3-pyqt5.sip python3-python-qt-bindingpython3-resource-retriever python3-roman python3-rosbag python3-rosboost-cfgpython3-rosclean python3-roscpp-msg python3-roscreate python3-rosdep2python3-rosdistro python3-rosgraph python3-rosgraph-msgs python3-rosinstallpython3-rosinstall-generator python3-roslaunch python3-roslib python3-roslz4python3-rosmake python3-rosmaster python3-rosmsg python3-rosnodepython3-rosparam python3-rospkg python3-rospy python3-rosservicepython3-rostest python3-rostopic python3-rosunit python3-roswtf python3-rvizpython3-sensor-msgs python3-shape-msgs python3-sip python3-sip-devpython3-smclib python3-std-msgs python3-std-srvs python3-stereo-msgspython3-tf python3-tf2 python3-tf2-msgs python3-tf2-rospython3-tf2-sensor-msgs python3-topic-tools python3-trajectory-msgspython3-vcstools python3-visualization-msgs python3-vtk9 python3-wstoolpython3.10 python3.10-dev python3.10-minimal qdoc-qt5 qhelpgenerator-qt5qt5-assistant qt5-gtk-platformtheme qt5-qmake qt5-qmake-binqt5-qmltooling-plugins qtattributionsscanner-qt5 qtbase5-devqtbase5-dev-tools qtchooser qtdeclarative5-dev qtdeclarative5-dev-toolsqttools5-dev qttools5-dev-tools qttools5-private-dev qttranslations5-l10nros-actionlib-msgs ros-base ros-base-dev ros-base-lisp-devros-base-python-dev ros-cmake-modules ros-core ros-core-devros-core-lisp-dev ros-core-python-dev ros-core-rosbuild-dev ros-desktopros-desktop-dev ros-desktop-full ros-desktop-full-lisp-devros-desktop-full-python-dev ros-desktop-lisp-dev ros-desktop-python-devros-diagnostic-msgs ros-environment ros-geometry-msgs ros-map-msgsros-message-generation ros-message-runtime ros-mk ros-move-base-msgsros-nav-msgs ros-pcl-msgs ros-perception ros-perception-devros-perception-lisp-dev ros-perception-python-dev ros-robot ros-robot-devros-robot-lisp-dev ros-robot-python-dev ros-robot-state-publisherros-roscpp-msg ros-rosgraph-msgs ros-sensor-msgs ros-shape-msgsros-simulators ros-simulators-dev ros-simulators-lisp-devros-simulators-python-dev ros-std-msgs ros-std-srvs ros-stereo-msgsros-tf2-msgs ros-topic-tools-srvs ros-trajectory-msgs ros-visualization-msgsros-viz ros-viz-dev ros-viz-python-dev rosbash rosbuild roslang roslisprosout rospack-tools rviz sbcl sip-dev subversion tcl-dev tcl8.6-devtf-tools tf2-tools tk-dev tk8.6-dev topic-tools unixodbc-common unixodbc-devuuid-dev va-driver-all vdpau-driver-all vtk9 x11proto-dev xorg-sgml-doctoolsxtrans-dev zlib1g-dev
Suggested packages:cmake-doc ninja-build cmake-format googletest libgtest-dev gsfontsgraphviz-doc i965-va-driver-shaders apache2 | lighttpd | httpd libitpp-devlibcuda1 libnvcuvid1 libnvidia-encode1 liblapack-doc libbluray-bdjlibboost-doc libboost1.74-doc gccxml libboost-contract1.74-devlibmpfrc++-dev libntl-dev xsltproc doxygen docbook-xsl fop libbullet2-devlibbullet2 libcurl4-doc libidn11-dev libkrb5-dev librtmp-dev libssh2-1-devlibeigen3-doc freetype2-doc libgdal-doc libgeotiff-epsg geotiff-bin gdal-binglew-utils libhdf4-doc hdf4-tools libhdf5-doc libhwloc-contrib-pluginslibice-doc icu-doc libjs-jquery-ui-docs liblog4cxx-doc liblzma-docnetcdf-bin netcdf-doc odbc-postgresql tdsodbc ogdi-bin ogre-1.12-docopencv-doc openmpi-doc openni-doc openni2-doc libpcl-doc postgresql-doc-14qt5-image-formats-plugins qtwayland5 libraw1394-doc lksctp-tools libsm-docsqlite3-doc libssl-doc libsuperlu-doc libtbb-doc libtinyxml-doc vtk9-docvtk9-examples java-virtual-machine libx11-doc libx265-doc libxcb-doclibxerces-c-doc libxext-doc libxt-doc kdiff3 | kdiff3-qt | kompare | meld| tkcvs | mgdiff qct python3-mysqldb python3-openssl openjdk-11-demoopenjdk-11-source visualvm fonts-ipafont-gothic fonts-ipafont-minchofonts-wqy-microhei | fonts-wqy-zenhei docutils-doc fonts-linuxlibertine| ttf-linux-libertine texlive-lang-french texlive-latex-basetexlive-latex-recommended python-numpy-doc python3-pytestpython-pygments-doc ttf-bitstream-vera python-sip-doc mayavi2python3.10-venv python3.10-doc qt5-doc firebird-dev sbcl-doc sbcl-sourceslime db5.3-util libapache2-mod-svn subversion-tools tcl-doc tcl8.6-doctk-doc tk8.6-doc libvdpau-va-gl1
Recommended packages:python3-crypto gazebo9 libgazebo9-dev
The following NEW packages will be installed:binfmt-support bzip2-doc catkin cl-actionlib cl-actionlib-msgs cl-bondcl-diagnostic-msgs cl-dynamic-reconfigure cl-geometry-msgs cl-map-msgscl-move-base-msgs cl-nav-msgs cl-nodelet cl-pcl-msgs cl-polled-cameracl-roscpp-msg cl-rosgraph-msgs cl-sensor-msgs cl-shape-msgs cl-std-msgscl-std-srvs cl-stereo-msgs cl-tf cl-tf2-msgs cl-tf2-srvs cl-topic-toolscl-trajectory-msgs cl-visualization-msgs cmake cmake-data cmake-extrasdefault-jdk default-jdk-headless default-libmysqlclient-dev dh-elpa-helperdocutils-common freeglut3 gdal-data graphviz hdf5-helpers i965-va-driveribverbs-providers icu-devtools image-transport-tools intel-media-va-driverjavascript-common joint-state-publisher joint-state-publisher-gui libaacs0libactionlib-dev libactionlib-msgs-dev libactionlib1d libaec-dev libaec0libangles-dev libann0 libaom-dev libaom3 libapr1 libapr1-dev libaprutil1libaprutil1-dev libarmadillo-dev libarmadillo10 libarpack2 libarpack2-devlibassimp-dev libassimp5 libassuan-dev libavcodec-dev libavcodec58libavformat-dev libavformat58 libavutil-dev libavutil56 libb64-0d libb64-devlibbdplus0 libblas-dev libblas3 libblosc-dev libblosc1 libbluray2libbond-dev libbondcpp-dev libbondcpp1d libboost-all-dev libboost-atomic-devlibboost-atomic1.74-dev libboost-atomic1.74.0 libboost-chrono-devlibboost-chrono1.74-dev libboost-chrono1.74.0 libboost-container-devlibboost-container1.74-dev libboost-container1.74.0 libboost-context-devlibboost-context1.74-dev libboost-context1.74.0 libboost-coroutine-devlibboost-coroutine1.74-dev libboost-coroutine1.74.0 libboost-date-time-devlibboost-date-time1.74-dev libboost-date-time1.74.0 libboost-devlibboost-exception-dev libboost-exception1.74-dev libboost-fiber-devlibboost-fiber1.74-dev libboost-fiber1.74.0 libboost-filesystem-devlibboost-filesystem1.74-dev libboost-graph-dev libboost-graph-parallel-devlibboost-graph-parallel1.74-dev libboost-graph-parallel1.74.0libboost-graph1.74-dev libboost-graph1.74.0 libboost-iostreams-devlibboost-iostreams1.74-dev libboost-locale-dev libboost-locale1.74-devlibboost-log-dev libboost-log1.74-dev libboost-log1.74.0 libboost-math-devlibboost-math1.74-dev libboost-math1.74.0 libboost-mpi-devlibboost-mpi-python-dev libboost-mpi-python1.74-devlibboost-mpi-python1.74.0 libboost-mpi1.74-dev libboost-mpi1.74.0libboost-nowide-dev libboost-nowide1.74-dev libboost-nowide1.74.0libboost-numpy-dev libboost-numpy1.74-dev libboost-numpy1.74.0libboost-program-options-dev libboost-program-options1.74-devlibboost-program-options1.74.0 libboost-python-dev libboost-python1.74-devlibboost-python1.74.0 libboost-random-dev libboost-random1.74-devlibboost-random1.74.0 libboost-regex-dev libboost-regex1.74-devlibboost-serialization-dev libboost-serialization1.74-devlibboost-serialization1.74.0 libboost-stacktrace-devlibboost-stacktrace1.74-dev libboost-stacktrace1.74.0 libboost-system-devlibboost-system1.74-dev libboost-system1.74.0 libboost-test-devlibboost-test1.74-dev libboost-test1.74.0 libboost-thread-devlibboost-thread1.74-dev libboost-timer-dev libboost-timer1.74-devlibboost-timer1.74.0 libboost-tools-dev libboost-type-erasure-devlibboost-type-erasure1.74-dev libboost-type-erasure1.74.0 libboost-wave-devlibboost-wave1.74-dev libboost-wave1.74.0 libboost1.74-devlibboost1.74-tools-dev libbrotli-dev libbullet-dev libbullet3.06 libbz2-devlibcaf-openmpi-3 libcamera-calibration-parsers-devlibcamera-calibration-parsers0d libcamera-info-manager-devlibcamera-info-manager0d libcdt5 libcfitsio-dev libcfitsio-doc libcfitsio9libcgraph6 libcharls-dev libcharls2 libchromaprint1 libclang1-14libclass-loader-dev libclass-loader1d libcoarrays-openmpi-dev libcodec2-1.0libcollada-dom-dev libcollada-dom2.5-dp0 libcollada-parser-devlibcollada-parser1d libcollada-urdf-dev libcollada-urdf1dlibconsole-bridge-dev libconsole-bridge1.0 libcpp-common0dlibcurl4-openssl-dev libcv-bridge-dev libcv-bridge2d libdav1d-dev libdav1d5libdc1394-25 libdc1394-dev libde265-0 libde265-dev libdecor-0-0libdecor-0-plugin-1-cairo libdeflate-dev libdiagnostic-msgs-devlibdouble-conversion-dev libdouble-conversion3 libdraco-dev libdraco4libdynamic-reconfigure-config-init-mutex-devlibdynamic-reconfigure-config-init-mutex0d libegl-devlibeigen-stl-containers-dev libeigen3-dev libevent-core-2.1-7 libevent-devlibevent-extra-2.1-7 libevent-openssl-2.1-7 libevent-pthreads-2.1-7libexif-dev libexif-doc libexpat1-dev libfabric1 libflann-dev libflann1.9libfontconfig-dev libfontconfig1-dev libfreeimage3 libfreetype-devlibfreetype6-dev libfreexl-dev libfreexl1 libfyba-dev libfyba0 libgdal-devlibgdal30 libgdcm-dev libgdcm3.0 libgeometric-shapes-devlibgeometric-shapes5d libgeometry-msgs-dev libgeos-c1v5 libgeos-devlibgeos3.10.2 libgeotiff-dev libgeotiff5 libgif-dev libgl-devlibgl1-mesa-dev libgl2ps-dev libgl2ps1.4 libgles-dev libgles1 libglew-devlibglew2.2 libglu1-mesa-dev libglvnd-core-dev libglvnd-dev libglx-devlibgme0 libgpg-error-dev libgpgme-dev libgphoto2-dev libgsm1 libgts-0.7-5libgts-bin libgvc6 libgvpr2 libhdf4-0-alt libhdf4-alt-dev libhdf5-103-1libhdf5-cpp-103-1 libhdf5-dev libhdf5-fortran-102 libhdf5-hl-100libhdf5-hl-cpp-100 libhdf5-hl-fortran-100 libhdf5-mpi-devlibhdf5-openmpi-103-1 libhdf5-openmpi-cpp-103-1 libhdf5-openmpi-devlibhdf5-openmpi-fortran-102 libhdf5-openmpi-hl-100libhdf5-openmpi-hl-cpp-100 libhdf5-openmpi-hl-fortran-100 libheif-devlibheif1 libhwloc-dev libhwloc-plugins libhwloc15 libibverbs-dev libibverbs1libice-dev libicu-dev libigdgmm12 libilmbase-dev libilmbase25libimage-geometry-dev libimage-geometry1d libimage-transport-devlibimage-transport0d libinteractive-markers-dev libinteractive-markers2dlibjbig-dev libjoint-state-listener1d libjpeg-dev libjpeg-turbo8-devlibjpeg8-dev libjs-jquery libjs-jquery-ui libjs-sphinxdoc libjs-underscorelibjson-c-dev libjsoncpp-dev libjsoncpp25 libjxr0 libkdl-parser-devlibkdl-parser1d libkml-dev libkmlbase1 libkmlconvenience1 libkmldom1libkmlengine1 libkmlregionator1 libkmlxsd1 liblab-gamut1 liblapack-devliblapack3 liblaser-geometry-dev liblaser-geometry0d libldap-devlibldap2-dev liblept5 libllvm14 liblog4cxx-dev liblog4cxx12 liblz4-devliblzma-dev libmap-msgs-dev libmd4c0 libmessage-filters-devlibmessage-filters1d libmfx1 libminizip-dev libminizip1libmove-base-msgs-dev libmysqlclient-dev libmysqlclient21 libnav-msgs-devlibnetcdf-c++4 libnetcdf-cxx-legacy-dev libnetcdf-dev libnetcdf19libnl-3-dev libnl-route-3-dev libnodelet-dev libnodelet-topic-tools-devlibnodeletlib-dev libnodeletlib-tools libnodeletlib1d libnorm1 libnuma-devliboctomap-dev liboctomap1.9 libodbc2 libodbccr2 libodbcinst2 libogdi-devlibogdi4.1 libogg-dev libogre-1.12-dev libogre1.12.10 libopencv-calib3d-devlibopencv-calib3d4.5d libopencv-contrib-dev libopencv-contrib4.5dlibopencv-core-dev libopencv-core4.5d libopencv-dev libopencv-dnn-devlibopencv-dnn4.5d libopencv-features2d-dev libopencv-features2d4.5dlibopencv-flann-dev libopencv-flann4.5d libopencv-highgui-devlibopencv-highgui4.5d libopencv-imgcodecs-dev libopencv-imgcodecs4.5dlibopencv-imgproc-dev libopencv-imgproc4.5d libopencv-ml-devlibopencv-ml4.5d libopencv-objdetect-dev libopencv-objdetect4.5dlibopencv-photo-dev libopencv-photo4.5d libopencv-shape-devlibopencv-shape4.5d libopencv-stitching-dev libopencv-stitching4.5dlibopencv-superres-dev libopencv-superres4.5d libopencv-video-devlibopencv-video4.5d libopencv-videoio-dev libopencv-videoio4.5dlibopencv-videostab-dev libopencv-videostab4.5d libopencv-viz-devlibopencv-viz4.5d libopencv4.5-java libopencv4.5d-jni libopenexr-devlibopenexr25 libopengl-dev libopenjp2-7-dev libopenmpi-dev libopenmpi3libopenmpt0 libopenni-dev libopenni-sensor-pointclouds0 libopenni0libopenni2-0 libopenni2-dev liborocos-kdl-dev liborocos-kdl1.5 libpathplan4libpcl-apps1.12 libpcl-common1.12 libpcl-conversions-dev libpcl-devlibpcl-features1.12 libpcl-filters1.12 libpcl-io1.12 libpcl-kdtree1.12libpcl-keypoints1.12 libpcl-ml1.12 libpcl-msgs-dev libpcl-octree1.12libpcl-outofcore1.12 libpcl-people1.12 libpcl-recognition1.12libpcl-registration1.12 libpcl-sample-consensus1.12 libpcl-search1.12libpcl-segmentation1.12 libpcl-stereo1.12 libpcl-surface1.12libpcl-tracking1.12 libpcl-visualization1.12 libpcre16-3 libpcre2-16-0libpcre2-dev libpcre2-posix3 libpcre3-dev libpcre32-3 libpcrecpp0v5libpgm-5.3-0 libpmix-dev libpmix2 libpng-dev libpng-tools libpoco-devlibpocoactiverecord80 libpococrypto80 libpocodata80 libpocodatamysql80libpocodataodbc80 libpocodatapostgresql80 libpocodatasqlite80libpocoencodings80 libpocofoundation80 libpocojson80 libpocojwt80libpocomongodb80 libpoconet80 libpoconetssl80 libpocoredis80 libpocoutil80libpocoxml80 libpocozip80 libpolled-camera-dev libpolled-camera0dlibpoppler-dev libpoppler-private-dev libpq-dev libpq5 libproj-dev libproj22libpsm-infinipath1 libpsm2-2 libpthread-stubs0-dev libpython3-devlibpython3.10-dev libqhull-dev libqhull-r8.0 libqhull8.0 libqhullcpp8.0libqt5concurrent5 libqt5core5a libqt5dbus5 libqt5designer5libqt5designercomponents5 libqt5gui5 libqt5help5 libqt5network5libqt5opengl5 libqt5opengl5-dev libqt5positioning5 libqt5printsupport5libqt5qml5 libqt5qmlmodels5 libqt5qmlworkerscript5 libqt5quick5libqt5quickparticles5 libqt5quickshapes5 libqt5quicktest5libqt5quickwidgets5 libqt5sensors5 libqt5sql5 libqt5sql5-sqlite libqt5svg5libqt5test5 libqt5webchannel5 libqt5webkit5 libqt5webkit5-dev libqt5widgets5libqt5xml5 librabbitmq4 librandom-numbers-dev librandom-numbers0dlibraw1394-dev libraw1394-tools librdmacm1 libresource-retriever-devlibresource-retriever0d librhash0 librobot-state-publisher-solver1dlibros-rosgraph-msgs-dev librosbag-dev librosbag-storage-devlibrosbag-storage4d librosbag4d librosconsole-bridge-devlibrosconsole-bridge0d librosconsole-dev librosconsole3d libroscpp-core-devlibroscpp-dev libroscpp-msg-dev libroscpp-serialization0d libroscpp4dlibroslib-dev libroslib0d libroslz4-1d libroslz4-dev librospack-devlibrospack0d librostest-dev librostime1d librttopo-dev librttopo1librviz-dev librviz6d libsctp-dev libsctp1 libsdl2-2.0-0 libsensor-msgs-devlibserf-1-1 libshape-msgs-dev libshine3 libsm-dev libsmc-dev libsnappy1v5libsocket++1 libspatialite-dev libspatialite7 libsqlite3-devlibsrt1.4-gnutls libssh-gcrypt-4 libssl-dev libstb0 libstd-msgs-devlibstd-srvs-dev libstereo-msgs-dev libsuperlu-dev libsuperlu5 libsvn1libswresample-dev libswresample3 libswscale-dev libswscale5 libsz2libtbb-dev libtbb12 libtbb2 libtbbmalloc2 libtesseract4libtf-conversions-dev libtf-conversions0d libtf-dev libtf1d libtf2-2dlibtf2-bullet-dev libtf2-dev libtf2-eigen-dev libtf2-geometry-msgs-devlibtf2-kdl-dev libtf2-msgs-dev libtf2-ros-dev libtf2-ros1dlibtf2-sensor-msgs-dev libtheora-dev libtiff-dev libtiffxx5 libtinyxml-devlibtinyxml2-9 libtinyxml2-dev libtinyxml2.6.2v5 libtopic-tools-devlibtopic-tools2d libtrajectory-msgs-dev libucx0 libudfread0 liburdf-devliburdf-parser-plugin-dev liburdf1d liburdfdom-dev liburdfdom-headers-devliburdfdom-model-state3.0 liburdfdom-model3.0 liburdfdom-sensor3.0liburdfdom-world3.0 liburiparser-dev liburiparser1 libusb-1.0-0-devlibusb-1.0-doc libutf8proc2 libutfcpp-dev libva-drm2 libva-x11-2 libva2libvdpau1 libvisualization-msgs-dev libvtk9-dev libvtk9-java libvtk9-qt-devlibvtk9.1 libvtk9.1-qt libvulkan-dev libwebp-dev libx11-dev libx264-163libx265-199 libx265-dev libxau-dev libxcb-xinerama0 libxcb-xinput0libxcb1-dev libxdmcp-dev libxerces-c-dev libxerces-c3.2 libxext-devlibxft-dev libxml2-dev libxmlrpcpp-dev libxmlrpcpp3d libxnvctrl0libxrender-dev libxss-dev libxt-dev libxvidcore4 libyaml-cpp0.7 libzmq5libzstd-dev libzvbi-common libzvbi0 libzzip-0-13 mercurial mercurial-commonmesa-va-drivers mesa-vdpau-drivers mpi-default-bin mpi-default-devmysql-common opencv-data openjdk-11-jdk openjdk-11-jdk-headless openmpi-binopenmpi-common openni-utils pcl-tools pkg-config pluginlib-dev proj-binproj-data pyqt5-dev python3-actionlib python3-actionlib-msgs python3-bondpython3-bondpy python3-catkin python3-catkin-pkg python3-cv-bridgepython3-defusedxml python3-dev python3-diagnostic-msgs python3-docutilspython3-dynamic-reconfigure python3-empy python3-gencpp python3-genlisppython3-genmsg python3-genpy python3-geometry-msgs python3-gnupgpython3-image-geometry python3-interactive-markers python3-laser-geometrypython3-map-msgs python3-message-filters python3-move-base-msgspython3-mpi4py python3-nav-msgs python3-nodelet python3-nodelet-topic-toolspython3-numpy python3-opencv python3-pcl-msgs python3-polled-camerapython3-pycryptodome python3-pygments python3-pykdl python3-pyqt5python3-pyqt5.sip python3-python-qt-binding python3-resource-retrieverpython3-roman python3-rosbag python3-rosboost-cfg python3-roscleanpython3-roscpp-msg python3-roscreate python3-rosdep2 python3-rosdistropython3-rosgraph python3-rosgraph-msgs python3-rosinstallpython3-rosinstall-generator python3-roslaunch python3-roslib python3-roslz4python3-rosmake python3-rosmaster python3-rosmsg python3-rosnodepython3-rosparam python3-rospkg python3-rospy python3-rosservicepython3-rostest python3-rostopic python3-rosunit python3-roswtf python3-rvizpython3-sensor-msgs python3-shape-msgs python3-sip python3-sip-devpython3-smclib python3-std-msgs python3-std-srvs python3-stereo-msgspython3-tf python3-tf2 python3-tf2-msgs python3-tf2-rospython3-tf2-sensor-msgs python3-topic-tools python3-trajectory-msgspython3-vcstools python3-visualization-msgs python3-vtk9 python3-wstoolpython3.10-dev qdoc-qt5 qhelpgenerator-qt5 qt5-assistantqt5-gtk-platformtheme qt5-qmake qt5-qmake-bin qt5-qmltooling-pluginsqtattributionsscanner-qt5 qtbase5-dev qtbase5-dev-tools qtchooserqtdeclarative5-dev qtdeclarative5-dev-tools qttools5-dev qttools5-dev-toolsqttools5-private-dev qttranslations5-l10n ros-actionlib-msgs ros-baseros-base-dev ros-base-lisp-dev ros-base-python-dev ros-cmake-modulesros-core ros-core-dev ros-core-lisp-dev ros-core-python-devros-core-rosbuild-dev ros-desktop ros-desktop-dev ros-desktop-fullros-desktop-full-dev ros-desktop-full-lisp-dev ros-desktop-full-python-devros-desktop-lisp-dev ros-desktop-python-dev ros-diagnostic-msgsros-environment ros-geometry-msgs ros-map-msgs ros-message-generationros-message-runtime ros-mk ros-move-base-msgs ros-nav-msgs ros-pcl-msgsros-perception ros-perception-dev ros-perception-lisp-devros-perception-python-dev ros-robot ros-robot-dev ros-robot-lisp-devros-robot-python-dev ros-robot-state-publisher ros-roscpp-msgros-rosgraph-msgs ros-sensor-msgs ros-shape-msgs ros-simulatorsros-simulators-dev ros-simulators-lisp-dev ros-simulators-python-devros-std-msgs ros-std-srvs ros-stereo-msgs ros-tf2-msgs ros-topic-tools-srvsros-trajectory-msgs ros-visualization-msgs ros-viz ros-viz-devros-viz-python-dev rosbash rosbuild roslang roslisp rosout rospack-toolsrviz sbcl sip-dev subversion tcl-dev tcl8.6-dev tf-tools tf2-tools tk-devtk8.6-dev topic-tools unixodbc-common unixodbc-dev uuid-dev va-driver-allvdpau-driver-all vtk9 x11proto-dev xorg-sgml-doctools xtrans-dev zlib1g-dev
The following packages will be upgraded:curl libcurl4 libfreetype6 libgpgme11 libldap-2.5-0 libpoppler-cpp0v5libpoppler-glib8 libpoppler118 libpython3.10 libpython3.10-minimallibpython3.10-stdlib libssl3 libtiff5 libwebp7 libwebpdemux2 libwebpmux3libx11-6 libx11-xcb1 libxml2 openjdk-11-jre openjdk-11-jre-headlesspoppler-utils python3.10 python3.10-minimal
24 upgraded, 903 newly installed, 0 to remove and 370 not upgraded.
Need to get 557 MB of archives.
After this operation, 2,273 MB of additional disk space will be used.
Do you want to continue? [Y/n] 

命令历史

ubuntu22.04 cmd history

    1  ifconfig
    2  sudo apt update 
    3  sudo apt upgrade 
    4  sudo apt install xrdp
    5  sudo systemctl restart xrdp
    6  sudo ufw allow form any to any port 3389
    7  sudo ufw allow from any to any port 3389
    8  sudo ufw allow 3389
    9  sudo systemctl restart xrdp
   10  sudo ufw allow from any to any port 3389
   11  sudo ufw allow 3389
   12  sudo apt update 
   13  sudo apt upgrade 
   14  rqt
   15  source /opt/ros/humble/setup.bash 
   16  rqt
   17  locale  # check for UTF-8
   18  sudo apt update && sudo apt install locales
   19  sudo locale-gen en_US en_US.UTF-8
   20  sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
   21  export LANG=en_US.UTF-8
   22  locale  # verify settings
   23  sudo apt install software-properties-common
   24  sudo add-apt-repository universe
   25  sudo apt update && sudo apt install curl
   26  sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
   27  echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
   28  sudo apt update
   29  sudo apt upgrade
   30  sudo apt install ros-humble-desktop
   31  sudo apt install ros-dev-tools
   32  sudo apt install ros-humble-turtlebot3-gazebo ros-humble-turtlebot3-simulations 
   33  source /opt/ros/humble/setup.bash
   34  ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py 
   35  export TURTLEBOT3_MODEL=burger
   36  ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py 
   37  history
   38  sudo apt upgrade 
   39  ifconfig
   40  sudo rm /etc/apt/sources.list.d/ros2.list 
   41  sudo apt install ros
   42  ls
   43  cd ..
   44  gedit .bashrc
   45  history
   46  source /opt/ros/humble/setup.bash 
   47  cd /opt/ros
   48  printenv | grep ROS
   49  sudo apt install ros-desktop-full-dev 
   50  sudo apt update 
   51  sudo apt install ros-desktop-full-dev 
   52  sudo apt install catkin
   53  sudo apt install python3-catkin-pkg
   54  sudo apt install catkin
   55  sudo apt remove python3-catkin-pkg python3-catkin-pkg-modules
   56  sudo apt install ros-desktop-full-dev 
   57  sudo apt install catkin
   58  sudo apt install python3-catkin-pkg
   59  sudo apt autoremove 
   60  sudo apt install ros-desktop-full-dev 
   61  printenv | grep ROS
   62  rosservice list 
   63  rosservice -h
   64  ubuntu 
   65  cd src/
   66  ls
   67  ./butterfly 
   68  rostopic list
   69  ls
   70  git clone https://gitcode.net/ZhangRelay/cocubesim
   71  ls
   72  cd cocubesim/
   73  ls
   74  tar -xf cocubesim.tar 
   75  ls
   76  cd Code/
   77  ls
   78  cd robot/
   79  catkin_make
   80  source devel/setup.bash 
   81  rosrun turtlesim turtlesim_node 
   82  catkin_make
   83  rosrun turtlesim turtlesim_node 
   84  roscore
   85  gazebo
   86  ls
   87  history
 

ubuntu20.04


 


ROS

机器人操作系统ROS(Robot Operating System)是一种用于机器人编程和控制的开源软件平台。ROS1和ROS2是两个主要的ROS版本。以下是ROS1和ROS2的简要介绍:

ROS1:

ROS1于2007年诞生,由Willow Garage公司开发和维护。它是一个基于Linux的机器人软件控制平台,提供了一系列机器人开发软件(程序库)和工具,包括硬件抽象、子设备控制、传感、识别、绘图、运动规划等功能。ROS1使用基于主题的发布-订阅通信模型,节点之间通过发布和订阅主题来传递消息。

ROS2:

ROS2是ROS的下一代版本,于2019年正式发布。它由ROS基金会负责维护,并进行了许多改进和优化。ROS2的主要特点是支持多种操作系统,包括Linux、Windows和macOS,并且可以运行在多种硬件平台上。ROS2还提供了更高效的、更可靠的的消息传递机制,以及更强大的软件包管理和调试工具。

总的来说,ROS1和ROS2都是用于机器人编程和控制的优秀软件平台,具有广泛的应用和支持。选择哪个版本主要取决于具体的应用需求和硬件平台。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/26216.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt编写自定义控件:自定义表头实现左右两端上部分圆角

如上图,左上角和右上角凸出来了。设置表格圆角和表头圆角和QHeaderView::section圆角都不管用。解决此问题需要重写QHeaderView的paintSection()函数: class CustomHeaderView : public QHeaderView { public:explicit CustomHeaderView(Qt::Orientati…

补充JDK源码-IDEA集成工具

在阅读JDK8源码的时候发现,只有一小部分常用包是存在源码及其注释的,而很多内部包是没有源码,class文件在阅读的时候对阅读者十分不友好。在网上搜集了很多资料都没有解决问题。 解决问题办法:参考文档。本文主要是根据这篇文章记…

西电-印刷电路板(PCB)设计指南0903完整版

PCB设计是以电路原理图为根据,实现电路设计者所需要的功能。 最近我找到一份西安电子科技大学的PCB设计指南的课件,课件内容非常夯实详尽: 分为通用电路篇和高速电路篇,包含了: PCB基础知识 PCB设计步骤和规范 电流路径分析、常见类型PCB设计 传输线与阻抗匹配、信号…

react icon ant简单使用

refer&#xff1a; 文字提示 Tooltip - Ant Design 1.首先保证已经引入了Ant 2.在组件&#xff08;页面&#xff09;引入tooltip import { Form, Tooltip } from antd; 3.在合适的位置使用tooltip&#xff1a; <span>寿命 <Tooltip title"这是寿命的说明&quo…

实力认证 | 百分点科技蝉联中国大数据企业50强

近日&#xff0c;第八届中国大数据产业生态大会在京召开 &#xff0c;本届大会以“数实共融 生态共建”为主题&#xff0c;由赛迪传媒、大数据产业生态联盟、《软件和集成电路 》杂志社联合主办。会上颁布多个奖项&#xff0c;百分点科技斩获2023中国大数据企业50强、金沙奖“…

容器——2.Collection 子接口之 List

文章目录 2.1. Arraylist 和 Vector 的区别?2.2. Arraylist 与 LinkedList 区别?2.2.1. 补充内容:双向链表和双向循环链表2.2.2. 补充内容:RandomAccess 接口 2.3 ArrayList 的扩容机制 2.1. Arraylist 和 Vector 的区别? ArrayList 是 List 的主要实现类&#xff0c;底层使…

【WebRTC---源码篇】(二十三)JitterBuffer

PacketBuffer packetbuffer类中重要的一些变量 // buffer_.size() and max_size_ must always be a power of two.const size_t max_size_;//能存储的最大元素个数// The fist sequence number currently in the buffer.uint16_t first_seq_num_ RTC_GUARDED_BY(crit_);//这个…

利用Jmeter做接口测试全流程分析

利用Jmeter做接口测试怎么做呢&#xff1f;过程真的是超级简单。 明白了原理以后&#xff0c;把零碎的知识点填充进去就可以了。这篇文章就来介绍一下如何利用Jmeter做接口测试的流程&#xff0c;主要针对的是功能测试。暂不涉及到自动化测试和性能测试的内容。 一把来说&…

uniapp 微信小程序 分包

1、manifest.json内添加如图所示&#xff1a; "optimization" : {"subPackages" : true },2、在与pages同级上创建各个分包的文件夹 把需要分包的文件对应移入分包文件夹内 3、page.json内修改分包文件的路径 比如&#xff1a; {"path" : &qu…

vue结合three.js加载3D模型报404错误

使用vue结合three.js加载3D模型时报404的错误&#xff0c;加载字体库也会报404错误&#xff0c;同样的方法。 vue项目虽然使用npm install three安装了three&#xff0c;但是有些静态资源时读取不到的&#xff0c;当出现异常的404错误时&#xff0c;比如加载3D模型资源时&…

以太网ICMP协议(九)

目录 一、概述 二、ICMP消息类型 2.1 ICMP类型0和类型8&#xff1a;Ping功能 2.2 ICMP类型3&#xff1a;目标不可达 2.3 ICMP类型5&#xff1a;重定向 2.4 ICMP类型11&#xff1a;超时 三、报文格式 一、概述 由于IP协议是不可靠的通信协议&#xff0c;需要有其他协议的…

常见历史漏洞之Thinkphp

常见历史漏洞之Thinkphp 一、介绍二、Thinkphp历史漏洞三、Thinkphp特征发现四、批量漏洞检测五、漏洞总结六、5.0.23版本案例演示 一、介绍 Thinkphp是一种开源框架。是一个由国人开发的支持windows/Unix/Linux等服务器环境的轻量级PHP开发框架。很多cms就是基于thinkphp二次开…

【Kubernetes部署篇】基于Ubuntu20.04操作系统搭建K8S1.23版本集群

文章目录 一、集群架构规划信息二、系统初始化准备(所有节点同步操作)三、安装kubeadm(所有节点同步操作)四、初始化K8S集群(master节点操作)五、添加Node节点到K8S集群中六、安装Calico网络插件七、测试CoreDNS可用性 一、集群架构规划信息 pod网段&#xff1a;10.244.0.0/16…

什么是跨链 DeFi?

跨链 DeFi 是指存在于多个不同区块链生态系统之间的金融应用程序生态系统&#xff0c;可以在彼此之间无缝交换数据和通证。 Web3 生态系统已经变得多链化&#xff0c;存在于数百个区块链、二层网络、应用链和其他环境的去中心化应用繁荣发展。虽然多样化的区块链生态系统的推出…

【数据结构】顺序表

大家好&#xff01;今天我们来学习数据结构中的顺序表。 目录 1. 线性表 2. 顺序表 2.1 顺序表的概念 2.2 顺序表的分类 3. 顺序表的定义 4. 顺序表的接口实现 4.1 顺序表的初始化 4.2 销毁顺序表 4.3 打印顺序表 4.4 检查顺序表是否需要扩容 4.5 尾插数据 ​编辑 …

postgresql|数据库|MySQL数据库向postgresql数据库迁移的工具pgloader的部署和初步使用

前言&#xff1a; MySQL数据库和postgresql数据库之间的差异并不多&#xff0c;这里的差异指的是对SQL语言的支持两者并不大&#xff0c;但底层的东西差异是非常多的&#xff0c;例如&#xff0c;MySQL的innodb引擎概念&#xff0c;数据库用户管理&#xff0c;这些和postgresq…

3.2 防火墙

数据参考&#xff1a;CISP官方 目录 防火墙基础概念防火墙的典型技术防火墙企业部署防火墙的局限性 一、防火墙基础概念 防火墙基础概念&#xff1a; 防火墙&#xff08;Firewall&#xff09;一词来源于早期的欧式建筑&#xff0c;它是建筑物之间的一道矮墙&#xff0c;用…

static关键字

作者简介&#xff1a; zoro-1&#xff0c;目前大一&#xff0c;正在学习Java&#xff0c;数据结构等 作者主页&#xff1a; zoro-1的主页 欢迎大家点赞 &#x1f44d; 收藏 ⭐ 加关注哦&#xff01;&#x1f496;&#x1f496; 被static修饰意味什么 在Java中&#xff0c;被st…

STM32 CubeMX USB_(HID 鼠标和键盘)

STM32 CubeMX STM32 CubeMX USB_HID&#xff08;HID 鼠标和键盘&#xff09; STM32 CubeMX前言 《鼠标》一、STM32 CubeMX 设置USB时钟设置USB使能UBS功能选择 二、代码部分添加代码鼠标发送给PC的数据解析实验效果 《键盘》STM32 CubeMX 设置&#xff08;同上&#xff09;代码…

239. 滑动窗口最大值

1 问题描述 2 思路 为了每次元素进出的时候&#xff0c;我们都可以得到该窗口内的最大元素&#xff0c;我们需要自己定义一种队列里面包含方法可以获取最大值怎么才能获取队列里的最大值呢&#xff1f;在队列里排序也可以&#xff0c;这里我们采用单调队列&#xff1a;该队列…