WSL折腾记录之三:WSL+Ubuntu18.03环境下gazebo9视图黑屏问题的解决与升级安装gazebo11




前言

本文涉及的环境为:Win10 1809+WSL+Ubuntu 18.03。
问题:从shell启动gazebo,可以打开窗口,可以看到菜单及左边栏。但是visual视口中是黑屏的。
黑屏问题
查询并尝试了网上的大多数做法都没解决,最后卸载了ROS自带的gazebo9,重新安装gazebo11,解决了该问题。
为了验证这个方法,我又重新安装了整个ROS与gazebo,并将全过程记录如下:

  • 如果您只是想从gazebo9升级至11版本,可以跳转到卸载gazebo9开始阅读。

卸载gazebo11

为进行实验,卸载gazebo11和相关组件。

sudo apt-get remove gazebo11 gazebo11-*

卸载ROS

为进行实验,卸载ROS。

sudo apt-get purge ros-*

安装ROS

添加源,这里我选用中科大提供的ROS源。

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

再添加key

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

更新apt

sudo apt-get update

安装ros本体,我用的是完整安装的Desktop版,即desktop-full

sudo apt-get install ros-melodic-desktop-full

desktop-full将安装以下组件:

  1. ROS
  2. rqt
  3. rviz
  4. robot-generic libraries
  5. 2D/3D simulators
  6. navigation and 2D/3D perception

如果使用的是国外的源,则在安装过程中大概率遇到包下载失败的情况,可以尝试下修复丢失包的指令:

sudo apt-get update --fix-missing

安装完成后初始化依赖项

sudo rosdep init
rosdep update

设置环境变量

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

启动ros core验证安装结果

roscore

运行roscore
出现上述的信息代表ros安装成功。按下Ctrl+C键以停止roscore

  • 选装包:rosinstall,其实我没装。
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

卸载由ROS安装的gazebo9

卸载gazebo9

sudo apt-get remove gazebo9 gazebo9-common gazebo9-plugin-base libgazebo9:amd64 libgazebo9-dev:amd64 ros-melodic-gazebo-*  

卸载完成后用dpkg命令查看gazebo是否已经完成卸载:

dpkg -l | grep gazebo

dpkg -l | grep gazebo
没卸载干净的话可以尝试使用dpkg --purge清理残余的包:

sudo dpkg --purge gazebo9

安装gazebo11

配置电脑使电脑接受packages.osrfoundation.org,即配置镜像

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

设置key

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

安装gazebo11:

sudo apt-get install gazebo11 -y
  • 选装,对于想要在gazebo上进行2次开发的话可以再安装libgazebo11-dev包
sudo apt-get install libgazebo11-dev

运行gazebo验证安装情况(需要先在win10中启动VcXsrv):

gazebo

出现如下画面代表安装成功:
gazebo11 running on wsl ubuntu18.04


总结

对于gazebo9如何在wsl-ubuntu环境中运行的问题,我尚未找到方法。通过重装gazebo9到11版本则可以绕过上述的问题来使用gazebo。本文的流程对于想卸载、升级或降级到其他版本的gazebo版本在方法上应是相通的只是在命令中的版本号上存在细小的差别。


参考

Github Issue 3368

dpkg安装以及卸载软件

卸载ros的方法

ubuntu16.04卸载gazebo9重装gazebo7

Gazebo11的更新与安装

apt-get –fix-missing做什么以及什么时候有用?

Ubuntu16.04下E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

ROS入门教程-安装并配置ROS环境(Kinetic 版本)

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
W10的WSL(SubSystem for Linux)功能可以让Windows系统下安装一个兼容Linux环境,其中包括Ubuntu,提供给开发者更为便捷的开发环境。本文将介绍搭建WSL Ubuntu开发环境的详细步骤。 首先,需要在Windows 10系统中启用WSL功能。具体操作为:进入“控制面板”-“程序”-“启用或关闭Windows功能”-勾选“适用于Linux的Windows子系统”并应用更改。 搭建WSL Ubuntu环境,也分为几个步骤。首先,在Microsoft store搜索Ubuntu并下载安装安装完成后打开,系统会提示输入用户名和密码,这里输入的是为Ubuntu配置的用户名和密码。接着,建议及时更新系统,输入以下指令: ``` sudo apt update sudo apt upgrade ``` 之后就可以开始搭建环境了,可以根据需要安装和配置如下开发环境: 1. 安装python开发环境 输入以下指令: ``` sudo apt install python3 sudo apt install python3-pip ``` 2. 安装java开发环境 输入以下指令: ``` sudo apt install default-jre sudo apt install default-jdk ``` 3. 安装node.js环境 输入以下指令: ``` curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash - sudo apt-get install -y nodejs ``` 4. 安装vscode以及其它开发工具 在Windows系统中下载安装vscode,然后打开,按Ctrl+Shift+P调出命令面板,输入“WSL: 打开新的终端”,就可以在Ubuntu中打开vscode,实现兼容开发。 总结起来,搭建WSLUbuntu开发环境需要在Windows系统中启用WSL功能,下载安装Ubuntu,配置环境安装开发工具。相比于直接在Windows系统中搭建开发环境WSL Ubuntu更能提升开发效率,同时在Windows和Linux之间切换也更加方便,对于需要同时开发两个系统的开发者来说是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值