20
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

WSL2でRvizやGazeboなどを動かす

Last updated at Posted at 2021-02-16

はじめに

WSL2上のUbuntuからWindows上のXサーバーを利用してRvizやGazeboなどを表示させようとすると、Segmentation Faultなどが発生する場合がある。
この記事はその対策についてのメモである。

前提

WSL2、Ubuntu、ROS、Rviz、Gazebo等のインストールは済んでいるものとする。

検証環境

ソフトウェア

Windows 10 Pro バージョン 20H2 (OS ビルド 19032.804)
WSL2
Ubuntu 18.04.5 LTS (Bionic Beaver)
ROS Melodic (aptでインストールしたもの)
VcXsrv Version 1.20.8.1

ハードウェア

ALIENWARE m15
Core i7
NVIDIA RTX 2080

設定方法

WSL2上のUbuntu側

~/.bashrc に以下を追記して source ~/.bashrc する。


export DISPLAY="`grep nameserver /etc/resolv.conf | sed 's/nameserver //'`:0"
export LIBGL_ALWAYS_INDIRECT=0

ここで export LIBGL_ALWAYS_INDIRECT=0export LIBGL_ALWAYS_INDIRECT= でも良いようだ。(動作することは確認したが正確な仕様は未確認)

Windows上のVcXsrvのXLaunch側

XLaunch起動後の画面遷移を順番に貼っていく。

image.png

image.png

image.png
Native OpenGLのチェックを外す。
Disable access controlにチェックを入れる。

image.png

VcXsrvのWindows Defenderファイアウォールの設定

image.png
最低限パブリックにチェックを入れること。
恐らくWSL2内とWindowsとの間にはデフォルトゲートウェイが無いので、パブリックネットネットワーク扱いになるのではないかと。

動作確認

$ rviz

image.png

おまけ。起動に失敗する場合の症状

試しに export LIBGL_ALWAYS_INDIRECT=1 としてみる。
image.png

試しに export DISPLAY= としてみる。
image.png

参考

WSL1からWSL2への移行

20
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?