WindowsでC言語やC++のプログラムをコンパイルするための「MinGW」環境を構築する手順を解説します。
現在、WindowsでMinGWを導入する場合は、パッケージ管理ツールである「MSYS2」経由で「MinGW-w64(64ビット対応版)」をインストールするのが最も確実で主流な方法です。
ステップ 1:MSYS2のインストーラーをダウンロード
- MSYS2の公式サイト(https://www.msys2.org/)にアクセスします。
- ページの中央付近にある 「msys2-x86_64-YYYYMMDD.exe」(日付は最新のもの)というリンクをクリックして、インストーラーをダウンロードします。
ステップ 2:MSYS2をインストール
- ダウンロードした
.exeファイルを実行します。 - インストールウィザードが開くので、基本的にはすべて 「次へ (Next)」 をクリックして進めます。
- ※ インストール先フォルダはデフォルトの
C:\msys64のままにしておくことを強く推奨します(パスに日本語やスペースが含まれるとバグの原因になります)。
- ※ インストール先フォルダはデフォルトの
- インストールが完了したら、「Run MSYS2 now」にチェックを入れたまま 「完了 (Finish)」 をクリックします。黒いターミナル(コマンド入力画面)が自動で立ち上がります。
ステップ 3:MSYS2のパッケージを最新化
立ち上がった黒いターミナル画面で、システムを最新の状態にアップデートします。
- 以下のコマンドを入力し、Enterキーを押します。Bash
pacman -Syu - 途中で
Proceed with installation? [Y/n](インストールを進めますか?)と聞かれたら、yと入力してEnterを押します。 - アップデートの途中で「ターミナルを閉じる必要があります」という旨の英語メッセージが出た場合は、指示に従って右上の「×」ボタンでターミナルを閉じます。
- Windowsのスタートメニューから 「MSYS2 MSYS」 を探し、再度ターミナルを開きます。
- もう一度以下のコマンドを実行し、残りのアップデートを完了させます。Bash
pacman -Su
ステップ 4:MinGW-w64(GCCコンパイラ)をインストール
いよいよC/C++のコンパイラ本体をインストールします。
- MSYS2のターミナルで以下のコマンドを入力し、Enterを押します。Bash
pacman -S mingw-w64-x86_64-toolchain Enter a selection (default=all):(どれをインストールしますか?)と聞かれます。すべて必要なので、何も入力せずにそのままEnterキーを押します。Proceed with installation? [Y/n]と聞かれたら、yを押してEnterを押します。- ※ ダウンロードとインストールに数分かかります。プロンプト(
$マーク)が再び表示されるまで待ってください。
- ※ ダウンロードとインストールに数分かかります。プロンプト(
ステップ 5:Windowsの「環境変数(PATH)」を設定
インストールしたコンパイラを、Windowsのどこからでも(コマンドプロンプトやVSCodeなどから)呼び出せるようにするための重要な設定です。
- Windowsのスタートボタンをクリックし、検索窓に 「環境変数」 と入力します。
- 「システム環境変数の編集」 というメニューが表示されたらクリックして開きます。
- 「システムのプロパティ」画面の下部にある 「環境変数」 ボタンをクリックします。
- 上段の「(ユーザー名) のユーザー環境変数」または、下段の「システム環境変数」の中にある 「Path」 という項目を選択し、「編集」 をクリックします。
- 右側の 「新規」 をクリックし、以下のパスを入力します。Plaintext
C:\msys64\mingw64\bin - 「OK」を何度か押して、すべてのウィンドウを閉じます。
ステップ 6:動作確認
正しくインストールされ、PATHが通っているか確認します。
- Windowsのスタートボタンを右クリックし、「ターミナル」 または 「コマンドプロンプト」 を開きます。(※MSYS2のターミナルではありません)
- 以下のコマンドを入力してEnterを押します。DOS
g++ --version - 画面に
g++ (RevX, Built by MSYS2 project) XX.X.Xのようなバージョン情報がズラッと表示されれば、環境構築は完璧に成功しています!
これで、Windows上でC言語(gcc)やC++(g++)、およびWindows向けDLLのコンパイルを行う準備が整いました。

コメント