技術と趣味となにか

ゆるくやる

WSLでOpenGL(GUI)を使いたい

WSLからOpenGLを使いたいあなたへ

※2017-2018くらいにやったものです。

OpenGLのインストール

$ sudo apt-get install freeglut3-dev libglew1.5-dev libxmu-dev libxi-dev
# 必要なものをインストールします
# proxy環境の場合はsudoのあとに`-E`を追加してください

$ gcc ファイル名 -lGL -lglut
# コンパイルにはオプションが必要です

$ ./a.out
# 実行します

おそらく実行するとこんな感じで怒られます

freeglut (./a.out): failed to open display ''

Xmingのインストール

XmingというものをインストールしてWSLにGUI環境を生やします

ダウンロード・インストール

Xmingダウンロードページ 最新ファイルのXming-*-*-*-**-setup.exeのリンクをクリックするとダウンロードが始まります

インストールマネージャが開くので特にいじらずにインストールします

Bashの設定

$ sudo apt-get install x11-apps
# Xmingにつなげるためのものをインストール

$ echo "export DISPLAY=localhost:0.0" >> ~/.bashrc
# .bashrcに設定を保存

$ exec bash
# bashの再起動

$ xeyes &
# 起動
# &はバックグラウンドで動かすためのもの

もう一度./a.outをするとちゃんと動くはず


普段使うときにやること

windowsキーを押して検索するなりしてXmingを起動する

$ xeyes &
$ gcc ファイル名 -lGL -lglut
$ ./a.out

追記 macユーザーになったのでmacでのコマンドも書いておきます 開発環境の方はXcodeさえあればいい感じだったと思います

$ gcc -framework GLUT -framework OpenGL $filename -Wno-deprecated