LoginSignup
1
5

More than 3 years have passed since last update.

WSLでxeyesやRvizでエラーが出たのでその原因と解決策

Last updated at Posted at 2020-07-23

はじめに

WSL2(Ubuntu 18.04)でROS1(ROS-Melodic)を使おうと設定を進める中でGUI関連のエラーに悩まされたので、それらの記録です。

環境

WSL2導入までは(1)、WSL2導入後からGUI設定までは(2)のサイトを参考にしていた
自分の環境はWSL2だが、WSL1でも参考になると思われる

生じたエラー

xeyesなどのx11系アプリのGUIすら表示されない

WSLの設定を進める中で、xeyes等を実行してもXサーバが起動しない

エラーメッセージ

Error: Can't open display: ~IPアドレス~ :0.0

原因

Windows Defender ファイヤウォールその他セキュリティソフトによってXserverの通信がブロックされている

自分の環境ではESETが原因でした

解決策

Windows Defender ファイヤウォールやESETのネットワーク保護を解除する

Windows Defender ファイヤウォールを直接編集できる場合

ESETが入っている場合

Windows Defender ファイヤウォールを直接編集できないため、
ESETを起動 -> 設定 -> ネットワーク保護 -> トラブルシューティングウィザード -> VcXsrv windows xserver を「ブロック解除」
を行う

その他セキュリティソフトが入っている場合

上記を参考に、どこかで通信がブロックされていないかチェックする


Rvizが起動直後に落ちる

xeyesなどは起動するが、ROSインストール後にrvizを実行すると一瞬起動画面が表示されてすぐに落ちる

エラーメッセージ

segmentation fault (core dumped) rviz

原因

.bashrc に設定していた LIBGL_ALWAYS_INDIRECT=1 が悪さをしていた

解決策

~/.bashrc
LIBGL_ALWAYS_INDIRECT=

として数値を指定しない

参考

まとめ

セキュリティソフトと環境変数には気をつけろ!という教訓を得ました
(初投稿です。ありがとうございました。)

1
5
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
1
5