MSYS2の導入
インストーラのダウンロード
(画像はクリックで拡大できる)
MSYS2のWebページ https://www.msys2.org/ にアクセスし,ページの中段あたりにあるmsys2-x86_64-xxxxxxxx.exe
をクリックしてください.
インストーラの実行
MSYS2はダウンロードしたインストーラを実行し,特に設定を変更することなくインストールを進めれば問題ありません.
インストールする場所を変えたい場合には C:/msys64/
というインストール場所を好きな場所に変更してください.
MSYS2の起動
Windowsボタンを押したあとで「msys2」と検索窓に打つと,次の3つが候補に現れると思います.
- MSYS2 MSYS
- MSYS2 MinGW 64bit
- MSYS2 MinGW 32bit
以後は必ず2つ目のMSYS2 MinGW 64bitを起動することにしてください.クリックをすると青色のアイコンで以下のような画面が立ち上がるはずです.
この際,ターミナルの先頭にMINGW64
という文字列が現れていることを確認してください.
必要なソフトウェアのインストール
Cygwinと異なり,MSYS2はシェル環境の上で必要なソフトウェアのインストールを行います.インストールを行うためには,どのソフトウェアがウェブ上のどこあるかを表すソフトウェアのリストを更新する必要があります.
この更新にはpacman
と呼ばれるソフトウェアを使いますが,上記のリストの更新は以下のようにして行えます.
pacman -Syu
すると何度か,処理を進めるかどうかを聞かれるので,その都度Y
を入力して処理を進めます.また,もしかすると,一度ウィンドウを閉じてMSYS2を再起動するように促されるかもしれませんので,その都度MSYS2を開きなおしてpacman -Syu
を実行してください.
ソフトウェアリストの更新が済んだら,次に本講義で用いるソフトウェアのインストールを行います.本講義で使うソフトウェアは使うのが後半になるものも含めて以下の通りです.
- GNU C Compiler (gcc, C言語のコンパイラ)
- GNU Make (make, コンパイルの自動化ツール)
- FreeGLUT (OpenGLを使うためのライブラリ)
- GNU Debugger (gdb, C言語のデバッガ)
これらは,以下のコマンドで一括にインストール可能です (コピー&ペーストしてください).
pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-make mingw-w64-x86_64-freeglut mingw-w64-x86_64-gdb
インストール中には,何度か処理を進めるかどうかを聞かれる可能性がありますが,その都度 Y
を入力して処理を進めてください.このインストールが修了すれば,MSYS2の環境準備は終了です.
参考: Cygwinとの違い
CygwinとMSYS2はいずれもWindows上にUNIXと類似したシェル環境を用意するためのソフトウェアですが,CygwinはWindows上に「Cygwinの環境」というある意味での別環境を作るのに対して,MSYS2はWindows上で動くUNIXプログラムを個々に用意する点がやや異なります.
MSYS2のウェブページ上には以下のように書かれています.
MSYS2 tries to provide an environment for building native Windows software. MSYS2 provides a large collection of packages containing such software, and libraries for their development. As a large portion of the software uses GNU build tools which are tightly coupled to the unix world, this environment is also POSIX-compatible, and is in fact based on Cygwin.
要約すると,MSYS2はGCCなどのUNIX環境上で動作するソフトウェアを使いながらも,純粋にWindowsだけで動作するプログラムを作ることができます.
この違いは,本講義の後半で学習するOpenGL環境を使うときに現れます.Cygwinの場合はUNIX上のウィンドウ環境であるX11上でウィンドウを動作させるため,都度X11環境を立ち上げる必要がありますが,MSYS2はWindows自体のウィンドウを使うので,コンパイルして得られたプログラムをそのまま使うことができます.
一方で,MSYS2はCygwinと比べてサポートされているUNIXのソフトウェアが少ないという点がやや劣ります.とはいうものの,通常の使用の範囲ではMSYS2で困るという事は少なく,使い勝手はCygwinに勝るため,現在はCygwinよりもMSYS2が最初の選択肢になりやすい印象があります.
ここでは詳しく解説しませんが,Cygwinのような完全なUNIX環境を使いたい場合には,Windows Subsystemと呼ばれる環境が現在は用意されていて,そのSubsystem上に「本物の」UNIXベースのOSであるUbuntuなどをインストールした方が良さそうです.