GNU makeやコンパイラが動かせる環境を、Windows上にmsys2をインストールしてつくる。
Unixのbashライクなコマンドラインが使えるようになるソフトだが、このようなソフトは、他にはCygwinやMinGWなどがある。msys2にはpacmanというパッケージマネージャがあり便利。あと、メンテナンスもよくされているようでお薦め。
準備
アンチウイルスソフトが悪さする事があるようなので、「C:\msys64」フォルダを監視から除外するように設定しておく。(下記記事を参照)

msys2インストール
下記URLから、64bit版を入手しインストール。

msys2_x86_64_*.exe を実行しインストールする。
インストール先は、デフォルトの「C:¥msys64」で進める。(必要なら変更してもよい)
初回アップデート
インストールが終わると、ターミナルが開くので、下記コマンドを入力して、アップデートする。ターミナルが開かない場合は、インストール先のmsys2.exeを実行し更新する。
$ pacman -Syu
- 画面サイズや文字サイズは、左上アイコンの右クリックメニューの
Options...から変更できる。
開発ツールのインストール
パッケージのインストールは、pacman -S <パッケージ名>でインストールする。
$ pacman -S base-devel
$ pacman -S msys2-devel
$ pacman -S mingw-w64-x86_64-toolchain
$ pacman -S mingw-w64-x86_64-gnutls
$ pacman -S mingw-w64-x86_64-ruby
mingw-w64-i686で始まるパッケージは32bit版(mingw32.exe用)で、mingw-w64-x86_64で始まるパッケージは64bit版(mingw64.exe用)なので、32bit版を利用する場合は以下パッケージもインストールする。
$ pacman -S mingw-w64-i686-toolchain
$ pacman -S mingw-w64-i686-gnutls
$ pacman -S mingw-w64-i686-ruby
その他ツールをインストール
mingw32.exe 又は mingw64.exe を実行(以降、この環境で作業していく)
$ pacman -S nano #(簡易エディター)
$ pacman -S make #(make をインストール ※重要※)
$ pacman -S openssh #(openssh をインストール)
$ pacman -S git #(Git をインストール)
$ pacman -S ruby #(Ruby をインストール)
$ pacman -S ruby-docs #(Rubyドキュメント をインストール)
$ pacman -S p7zip #(7z をインストール)
$ pacman -S mingw-w64-x86_64-ag #(ag 高速検索コマンドをインストール)
- Gitを最初に使い始める前には、最低限の情報登録(ユーザ名、メールアドレス)の初期設定が必要。
Emacsをインストール
Emacsエディターが必要であれば、下記記事を参照しインストール。

実行用のショートカットを作る
エクスプローラから「c:¥msys64¥mingw32.exe」又は「c:¥msys64¥mingw64.exe」を 右クリックして、送る→デスクトップ でデスクトップに実行用のショートカットアイコンを作っておくと便利。
日常のアップデート
$ pacman -Syu
※シェルの更新があった場合は、ウィンドウを強制終了を要求される場合があるが、終了させて再度pacman -Syuコマンドを実行する。
msys2のディレクトリ表現
msys2では、/はWindows上ではmsys2がインストールされたフォルダになる。すなわち C:¥msys64 を示す。
又、Windows上のC:¥のトップは、msys2では/C/又はC:/になる。すなわち、Windowsのログイン・ユーザuserのデフォルト・ダウンロードフォルダは、C:¥User¥user¥Downloadなのでmsys2上では/C/User/user/Downloadとなる。
ホームディレクトリ
msys2のホームディレクトリは、/home/<ユーザ名>になる。Windows上では、C:¥msys64¥home¥<ユーザ名>となる。
環境を整える
msys2のターミナルが起動する時に、ホームディレクトリの.bashrcシェルスクリプトが実行される。 このファイルは、デフォルトで作られているが、下記のエイリアス定義をコメントアウトして有効にしておくと便利。
alias ll='ls -l' # long list
alias la='ls -A' # all but . and ..
alias l='ls -CF' #
pacmanの基本的な使い方
msys2では、pacmanというパッケージ管理コマンドが利用できる。基本的なコマンドを下記に示す。
pacman -hでヘルプ。pacman -S -hで-Sオプションのヘルプ。pacman -Suでパッケージのアップデート(事前にupdate-coreが必要)。pacman -Ssでパッケージを検索。pacman -Sl | grepでもだいたい分かる。pacman -S [package]でインストール。pacman -Rs [package]でアンインストール。pacman -Sgでパッケージグループの一覧を表示。pacman -Qqeでインストール済みのパッケージ一覧を表示。pacman -Si [package]で詳しい情報を表示。pacman -Scで使っていないキャッシュを削除。
補足
- 従来バージョンでは、初回アップデートの最初に
update-coreコマンド実行が必要だったが、最近のは不要。 - 32bit Windows版用のインストーラは公開されなくなった模様。
関連記事


参考
- MSYS2で快適なターミナル生活 – Qiita
- 「GCCマルチ開発環境の構築」 Interface誌 2013年11月号 p165~
- MSYS2 による gcc 開発環境の構築 ― gcc パッケージ群の導入 — しっぽのさきっちょ | text.Baldanders.info
- Pacman | Wikipedia
- pacman | archlinux
- Arch Linux | wikipedia



コメント