Windows に Unix ライクな開発環境を構築してみました

  • このエントリーをはてなブックマークに追加
  • Pocket

はじめまして。メディア開発本部エンジニアの久保です。

2016年8月に公開された、Windows 10 Anniversary Update では Bash on Ubuntu on Windows の提供が始まりました。
Windows でもネイティブな Bash 環境が整ったわけですが、まだまだ Windows 7 や 8.1 を使われている方もいるかと思います(私もその一人です!)。

そんな Windows 8.1 以前の環境でも GNU コマンドが使用したい!と思い、Windows に Unix ライクな環境を構築してみました。

MSYS2 とは

MSYS2(Minimal SYStem2) は Windows 上で Unix ライクなシェル環境を提供するもので、

  • ターミナルに mintty
  • シェルに Bash
  • パッケージマネージャに pacman

で構成されています。
Windows で Git を使っている方は、Git Bash でおなじみかと思います。

今回は MSYS2 をインストールして、Windows で GNU ツールを使えるようにしたいと思います。

MSYS2 のインストールと設定

検証環境

Windows 7 Professional SP1 64-bit

MSYS2 のインストール

MSYS2 installer より、インストーラをダウンロードします。
今回は 64-bit の Windows なので、msys2-x86_64-*.exe をダウンロードし、実行します。

インストールは特別な指定なく進められるかと思います。
インストール先は、標準の C:\msys64 としました。

MSYS2 の設定

インストールが完了したら、スタートメニューから MinGW-w64 Win64 Shell を起動します。

公式ドキュメントに沿って進めていきます。
まずは、アップデートをしましょう。パッケージマネージャの pacman のバージョンを確認します。

バージョンは 4.2.1 でした。
pacman のバージョンによって、アップデートコマンドが異なるので注意が必要です。

次に、core の update をします。

メッセージにもありますが、アップデートが完了したら、ターミナルウィンドウを閉じます。
今回は、closeコマンドではなく、[x]ボタンや Alt + F4 で閉じてください。

再度、スタートメニューから MinGW-w64 Win64 Shell を起動します。
続いて、パッケージのアップデートをしましょう。

アップデートが完了したらターミナルウィンドウを閉じましょう。

メッセージに書かれているように、起動スクリプトが変更されています。
起動スクリプトを次のように変更をしました。

もう一度ターミナル(MinGW-w64 Win64 Shell)を起動して、アップデートがないか確認しておきましょう。

以上でインストールが完了しました。

続いて、設定を行いましょう。

MSYS2 の設定

現在だと最低限のツールしかインストールされていないため、よく使われるパッケージをインストールします。

ターミナル(MinGW-w64 Win64 Shell)を起動します。

base-develパッケージをインストールします。

現状だと、Windows の PATH が参照されないため、Windows にインストールされているプログラムを実行できません。
そこで、これを参照するようにします。
C:\msys64\msys2_shell.cmd を以下のように変更します。

以上で設定が完了しました。

使ってみましょう

ホームディレクトリは、/home/username で、実体は、C:\msys64\home\username です。

ssh をインストールしてみます。パッケージのインストールは、pacman -S パッケージ名 で行えます。

インストール可能なパッケージは、次のコマンドで確認できます。

おわりに

今回は、Windows に Unix ライクな環境を構築することを目的に、MSYS2 を用いて Bash 環境を構築しました。

Mac や Linux と同一の環境とまではいきませんが、ローカル環境でちょっとコマンドを実行したいとき、Mac で作成したスクリプトを Windows でも実行したいときなどに、大いに役立てられるのではないでしょうか。

そして、ウエディングパークでは、技術のウエディングパークを創っていく、未来の仲間を募集しています。

興味のある方は、まずはお気軽にオフィスに遊びにきてください。

IT×ブライダルで業界を変える!プロフェッショナルなWEBエンジニア募集!

  • このエントリーをはてなブックマークに追加
  • Pocket

SNSでもご購読できます。

コメント

  1. ts0818 より:

    すみません、IT初心者で最近、Git for Windowsをアンインストールし(Msys2との共存は難しいとネットに書いてあったので)、Msys2をインストールしたものなのですが、記事を拝見させていただきました。

    よく分からない部分があり、お聞きしたいのですが、
    https://sites.google.com/site/toriaezuzakki/msys2
    のサイトで、『pacmanでインストールしたパッケージはWindowsの実行形式なので、MSYS2 Shell以外からでも実行可能です。
    但し、インストール先をWindowsの環境変数PATHに設定してしまうと、同じDLLを利用する、MSYS2以外でインストールしたアプリケーション(Git for WindowsやGIMP for Windows等)が誤動作を起こす可能性があります。』
    とあったのですが、
    C:\msys64\msys2_shell.cmd をAtomなどで開いて、
    rem set MSYS2_PATH_TYPE=inherit

    set MSYS2_PATH_TYPE=inherit
    に変更しても大丈夫でしょうか?

    また、
    http://1010toto.blog2.fc2.com/blog-entry-148.html
    のサイトによると、
    /etc/profileファイルの28行目より上に
    MSYS2_PATH_TYPE=”inherit”
    を追加する方法も記載されていたのですが、
    C:\msys64\msys2_shell.cmdを修正する場合とで
    どのような違いがありますでしょうか?

    自分の環境としましては、
    Windows 10 Home 64bit
    を使用しています。
    何卒よろしくお願いいたします。

コメントを残す

*