VScode MSYS2 openFrameworks 0.11.2 あるいは nightly build v20220622 インストール
openFrameworksのインストールに苦労したのでメモを書きました。
Visual Studio使えばインストールは簡単そうなんだけど、Visual Studioがデカくて嫌なのでVSCodeとMSYS2でやってみることにした。
openFrameworksの日本語ページには古い手順が載っていて、これに従っても上手くインストールできない。
https://teratail.com/questions/259158
openFrameworksの英語ページの案内に従ってインストールする。
https://openframeworks.cc/setup/msys2/
大雑把に日本語にしたけど、元のページ見たほうが良いと思う。
VScodeのインストール
案内には載ってないけどVSCodeを使いたいのでインストールしておく。
VSCodeのDLページからダウンロードしてインストールする。
https://azure.microsoft.com/ja-jp/products/visual-studio-code/
MSYS2のインストール
インストーラをダウンロードしてインストールする。
インストールしたら msys2.exe を起動して、
$ pacman -Syu --noconfirm --needed
でMSYS2を更新する。
更新できたら一旦終了する。
openFrameworksのインストール
どうしてもoFライブラリをコンパイルする段階で失敗するので、フォーラムで質問してみたらナイトリービルドを試すように回答を頂いたので、ダウンロードページの下の方にある of_v20220622_msys2_mingw64_nightly.zip をダウンロードして依存関係のインストールからやり直した。
ガイドにサンプルのコンパイル例として使われている 3DPrimitivesExample はコンパイルに失敗するが、ほかのサンプルはコンパイルできた。実行も問題なくできているみたい。
MSYS2用のzipファイルをダウンロードする。
https://openframeworks.cc/ja/download/
32bit版と64bit版があるので、以降の手順で32bit版を使う場合はMSYS2も mingw32.exe を使う。64bit版ならmingw64.exe。
ダウンロードしたzipを適当な場所に展開する。このときパスに日本語やスペースが含まれるとダメらしい。私は以下のような感じにしました。
/c/openFrameworks/of_v0.11.2_msys2_mingw64_release/zipの中身
依存関係をインストールする
ダウンロードしたzipに合わせて mingw64.exe か mingw32.exe を起動する。
$ cd ~/scripts/msys2
でディレクトリを移動したら、
$ ./install_dependencies.sh
で依存関係のインストールが始まる。
Proceed with installation? [Y/n] を何回も表示してくるから、全部 y で答える。 インストールするパッケージが多くて時間が掛かる。不安になるけど辛抱。
oFライブラリをコンパイルする
$ cd ~/libs/openFrameworksCompiled/project
でライブラリのディレクトリに移動して、
$ make
でコンパイルできる。
$ make -j4
とか $ make -j8
のようにするとマルチスレッドでコンパイルしてくれるので早いらしい。
正しく完了すると
Done
と表示される。
パスを通す
コマンドプロンプトを起動して以下のように入力する。
setx PATH "c:\msys64\mingw32\bin;c:\msys64\usr\bin;%PATH%"
mingw64を使っている場合はmingw32
のところをmingw64
にする。
サンプルをコンパイルしてみる
3DPrimitivesExample の場合は、
$ cd ~/examples/3d/3DPrimitivesExample
でサンプルのディレクトリに移動したら、
$ make
でコンパイルできる。
$ make run
で実行できる。
実行ファイルは
~/examples/3d/3DPrimitivesExample/bin/
に生成される。
パスが通っていれば実行ファイルをダブルクリックすれば必要なdllを自動で見つけてきて実行できる。
$ make copy_dlls
で必要なdllをアプリケーションフォルダにコピーしてくれる。パスを通してない場合はこれで実行できる。
VSCodeのターミナルのMSYS2を追加する
VSCodeを起動したら、Ctrl + Shift + P でコマンドパレットを開く。
コマンドパレットに settings.json と入力する。
基本設定(設定)jsonを開くを選択する。
settings.jsonが開くので、一番下とか適当なところに以下を書き足して保存する。
"terminal.integrated.profiles.windows": { "MSYS2 Bash": { "path": [ "C:\\msys64\\usr\\bin\\bash.exe" ], "args": [ "--login" ], "env": { "MSYSTEM": "MINGW64", "CHERE_INVOKING": "1" } } }
保存できたら、ターミナルの右上にあるプルダウンメニューからMSYS2が選択できるようになってるはず。