茱萸note

電子工作の備忘録と旅行の記録

Windows WSL 電子工作

WSLでGUIアプリを起動させる

投稿日:2020年5月1日 更新日:

WSLでGUIアプリを動かすためにVcXsrvというX Window サーバーをインストールします。


目次


はじめに

  • WSLの導入が済んでいる事を前提としている。以前記事を書いているので参考にしてほしい。

WSLは基本的にターミナル上で操作をおこなうが、WindowsにX Window サーバーというのをインストールすると、GUIアプリが使えるようになる。

VcXsrvをインストールする

VcXsrvをダウンロードする。
https://sourceforge.net/projects/vcxsrv/

ダウンロードできたら、インストーラーを起動してインストールをする。

インストールが完了したら、『高DPI設定の変更』をします。デスクトップかスタートメニューで『XLaunch』を右クリックして、『ファイルの場所を開く』を選択。

『xlaunch(.exe)』を右クリックして、『プロパティ』を選択。

『互換性』をクリックしたのち、『高DPI設定の変更』をクリック。

『高いDPIスケールの動作を上書きします。』にチェックを入れて、『システム』を選択し、『OK』。

VcXsrvを起動して確かめてみる

デスクトップかスタートメニューからXLaunchを起動してみる。

すると、色々と設定項目が並ぶが、基本そのまま『次へ』を押せば大丈夫である。

初回起動時は、Windows Defender ファイラウォールの警告画面が出る。プライベートネットワークとパブリックネットワークの両方にチェックを入れて『アクセスを許可する』をクリックする。

VcXsrvが起動しているかどうかは、通知領域のアイコンがあるか無いかで判断できる。

VcXsrvの起動が確認できたら、WSLを起動させて、次のコマンドを順に入力する。

sudo apt install x11-apps
xeyes

次のように目が表示されたら成功である。

VcXsrvを自動で起動するようにする

Windowsを再起動する度にVcXsrvを起動するのは面倒なので、WSLを起動した時にVcXsrvも起動するように設定をする。

WSLを起動し、 code ~/.bashrc と打ち込んで、次をファイルの末尾に追記する。



# Start VcXsrv

if ! tasklist.exe | grep vcxsrv.exe > /dev/null ; then
  "/mnt/c/Program Files/VcXsrv/vcxsrv.exe" :0 -multiwindow -clipboard -noprimary -wgl > /dev/null 2>&1 & 
fi

export DISPLAY=localhost:0.0
export LIBGL_ALWAYS_INDIRECT=1

保存して VsCode を閉じる。次回以降WSLを起動するときは、VcXsrvが起動していなければ勝手に起動してくれる。

-電子工作
-, ,


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

C言語でのマイコンプログラミングのお作法

マイコンのプログラムをC言語で書く際に心がけるべきこと、知っておくべき知識について述べます。

Alexa で ESP8266 を操作する方法【Alexa×Arduino 検討】

Alexa を搭載した Amazon Echo 等を使って ESP8266(Arduino)を操作する方法を検討します。

Raspberry Pi をスマートリモコン化! Alexa で部屋の照明を操作する【Alexa×Raspberry Pi その2】

Raspberry Pi に赤外線LED・赤外線受光モジュールを付けて、Raspberry Pi を学習リモコン・スマートリモコン化します。そして、Raspberry Pi を AWS IoT 連携させて Alexa で部屋の照明を操作します。

【上級者向け】Ubuntuをデュアルブートする《その1:既にWindowsが入っているSSD・HDDにUbuntuを入れる》

既にWindowsがインストールされているSSD・HDDに追加でUbuntuをインストールする方法です。上級者向け。

ESP8266 で Tp-Link のスマートプラグ『Tapo P105』を直接操作する

Tp-Link のスマートプラグ『Tapo P105』をアプリや IFTTT といった外部サービスを用いずに、ESP8266 から直接操作してみます。