首先我下载的Ubuntu和virtualbox和ros都是最新版。
ros是noetic版本。
然后我们需要打开虚拟机上的相关设置:设置->常规->高级,全都改为双向。
在下面我们也可以看到相关的光盘映像也已经有在虚拟机上面(指下图的VBboxGuestAddition.iso)
然后我们打开虚拟机上的终端执行下面的命令(ctrl+alt+T)
由于我们用的是Ubuntu最新版所以需要更新编译器:
sudo apt update
sudo apt install gcc-12 g++-12
确保编译器是默认为gcc12
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 60 --slave /usr/bin/g++ g++ /usr/bin/g++-12
在操作系统Ubuntu上安装Guest Additions:
sudo /mnt/VBoxLinuxAdditions.run
之后我们重启虚拟机,至此该问题就被解决了。请注意在主机(Windows)上通常用Ctrl+C/V来复制粘贴东西,但是在Ubuntu系统的终端上要将主机上的内容复制需要右键然后点击弹出来的"复制",用Ctrl+C/V在终端不起作用,但在其他地方都适用。