1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

C/C++言語コンパイラ MinGW-w64のインストーラーが使えない件

Last updated at Posted at 2023-09-01

Windows 11でC/C++言語の環境構築

WindowsでC言語をプログラミングしたいと考えたら,まず一番最初にすることはgccコンパイラとg++コンパイラを入れる事だと思います.
WindowsのC言語コンパイラの一つとしてMinGW-w64が挙げられます.
コンパイラのインストーラーは公式サイトに載っている以下のリンクからダウンロード出来ます.分かりにくいですが,下の方にスクロールするとMinGW-W64-install.exe ファイルがあります.
https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/

ここから入手出来るインストーラーを使おうとすると上手く行きません.
このようにエラーが発生します.
スクリーンショット 2023-09-01 205609.png

インストーラーの設定はこんな感じです.他の設定も試してみましたが全て上のようなエラーが発生しました.
設定の仕方はこの記事を参照してみてください.
https://qiita.com/yut-nagase/items/9bb65481685f6b8002de
スクリーンショット 2023-09-01 205135.png

調べて見たところ,何年もこのバグが直されていないようです.

解決策

先程のインストーラーをダウンロード出来るサイトに戻ります.
そこでインストーラーの下に直接MinGW-w64のパッケージをダウンロード出来るリンクがバージョン毎に用意されています.この時点での最新バージョンは8.1.0でした.
スクリーンショット 2023-09-01 205135.png
ここで適当なものを選んでダウンロードします.
私の場合はx86_64-posix-sjljを選択しました.
ダウンロードしたらファイルを解凍します.zipファイルではないので,7-Zipなどの解凍ソフトを使うと解凍出来ます.
解凍したらCドライブにあるProgram Files(x86)のフォルダに,解凍したフォルダmingw64を移動します.
image.png

そしたら移動させたmingw64フォルダを選択してファイルのパスをコピーします.
右クリックをするとパスのコピーを選択出来ると思います.

次に設定アプリを開き,システム > バージョン情報 > システムの詳細設定を開きます.
これはスタートメニューで「システムの詳細設定の表示」を検索してEnterキーを押しても開けます.
image.png
次に「環境変数(N)」を選択して,自分のユーザー環境変数(U)の場所でPATHという変数を探します.
PATHを選択したら,下にある「編集」を選択します.
image.png
次に「新規」を選択して,先程コピーしたファイルのパスをペースト(Ctrl + V)します.
image.png
上の写真のようにペースト出来たら成功です.「OK」を押して終了です!

コンパイラが入っているか確認する.

ターミナル(PowerShellかコマンドプロンプトか)を開いて,gcc -vもしくはg++ -vと入力して以下のようになれば成功です!
image.png
image.png

動作環境

OS: Windows 11 Home
CPU: AMD Ryzen 7 5800H

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?