WindowsパソコンにC言語開発環境となるCコンパイラを導入する手順を解説します。
フリーで導入しやすいという点で紹介するのはLinuxやMacOSでもおなじみのgccコンパイラであるMingw-w64です。(Mingw-w64は以前からあったMinGWの派生バージョンです。2021年3月からMinGWのサイトが閉鎖されたようなのでこちらを利用します)
ここでは初心者が
1.手に入れやすい(事前登録なしにダウンロードできる)
2.無料
ということに絞ってMingw-w64を使ったgccコンパイラというフリーのCコンパイラのダウンロード、インストール、利用するための設定について解説します。
ちなみにタイトルにある「C言語開発環境を導入する」といのは、C言語で作ったプログラムをコンパイルし実行するためのソフトウエア群をパソコンにインストールするということです。C言語のコンパイラがないとC言語で作ったプログラムを実行形式のファイルとして出力ができません。つまり、アプリが作成できないということです。実はC言語のコンパイラには多くの種類があって、今回インストールするgccやbcc(BorlandのC/C++ Compiler)、Microsoftのcl(Visual C++)、あるいはMacOS標準のclangなどが代表的なものです。ちなみに今回インストールするgccコンパイラは、LinuxというOSであれば標準で入っているので、Linuxではいきなりgccが使えます。
C言語のコンパイラは現在様々なものが出回っています。
が、しかし手に入れるための事前登録が面倒だったり、統合開発環境とセットになって動作が重かったりとちょっと勉強しよう!という気軽さがないので管理人はgccコンパイラをお勧めします。
Mingw-w64インストーラのダウンロード
ダウンロードは以下のサイトから行います。
アクセスするこのような画面が表示されます。
下にスクロールしてください。
正直わかりにくいサイトです。(それっぽいWin-Buildsという項目をクリックしないように!)
Windowsの場合は、Sourcesと書かれた項目の下にあるSourceforgeのリンクをクリックします。
Sourceforgeのサイトに移動するので、下にスクロールします。(ちなみに最初の方にあるダウンロードリンクはMinGWのソースコードファイルの方です。インストーラではありません)
かなり下の方にMinGW-W64 Online Installerという項目があります。
MinGW-W64-install.exeをクリックするとすぐにダウンロードが始まります。
ダウンロードしたファイルはこんな感じです。
必ずウイルスチェックを済ませてから次のステップに進んでください。
Mingw-w64のインストール
ダウンロードしたアイコンをダブルクリックします。
「この不明な発行元からのアプリがデバイスに変更を加えることを許可しますか?」と聞いてくるのではいをクリックします。
インストーラが起動すると次の画面が表示されるので Next> をクリックします。
インストーラのセッティング画面が表示されます。
お持ちのパソコンが64bit版Windowsであれば、Architectureの項目をx86_64にしてNext> をクリックしてください。
WindowsOSのバージョンが32bit版かあるいは分からない場合は最初からArchitecture項目に設定されている i686 のままで大丈夫です。
i686とは32bit向けの意味です。
ちなみにArchitecture項目を切り替えると下のThreadsとExceptionの項目内容もそれぞれ変化しますが、デフォルトのままで問題ないかと思います。
詳しく知りたい方は以下が参考になります。
インストール先の選択画面です。
通常ならそのままNext>といきたい所ですが、インストール先のフォルダ階層が複雑でフォルダ名もやたらと長い点が気になりました。後でコンパイラへのパス設定をするときなどに面倒ですのでフォルダ名を短く変更しておきます。(そのままでいいや!という方はそのままでも結構です)
わたしの場合、Destination folderの項目を以下のように短くしました。(ちなみに更に短くしようと c: などのルートフォルダを指定してもできませんので悪しからず)
C:\gcc
実際の画面
Create shortcuts in Start Menuのチェックボックスはそのままチェックを入れておきます。(一応ツールらしきものがあるようなので)
インストール場所の変更が完了したらNext>をクリックします。
必要ファイルのダウンロードが開始します。
インストールには4~5分要します。
終了するとNext>ボタンがクリック出来るようになります。
最後にFinishをクリックしてインストール完了です。
次にきちんとインストールされているか確認しておきます。
ダウンロード中「The file has been downloaded incorrectly」が表示されインストールできない場合
この記事のコメントにもありますが、環境によりダウンロード中に「The file has been downloaded incorrectly」のエラーメッセージが表示される場合があります。その際は、以下の手順を試してください。
再度ダウンロードサイトを開く。
下の方にスクロールして、最初にダウンロードしたMinGW-W64 Online Installer(インストーラ版)ではなく、圧縮解凍版のgccコンパイラをダウンロードします。
64bit版ならx86_64-posix-sjljを、32bit版ならi686-posix-sjljを選択してください。
ダウンロードしたファイルは、拡張子が7zとなっています。
Windowsのデフォルト状態では解凍ができないため、7-Zip等のアーカイバソフトを使って解凍してください。
解凍したフォルダにmingw64フォルダが生成され、その中にコンパイルに必要なbinフォルダ等が入っている状態となります。
あとはmingw64フォルダを適当な場所にコピーしてください。(これでインストール完了となります)
次のインストール後の確認を飛ばして、後述するgccコンパイラのPath設定を行うに進んでください。
インストール後の確認
Mingw-w64をインストールするとgccというCコンパイラが利用できるようになります。
スタートメニューからメニューをたどり
MinGW-W64 project > Run terminal を選択してください。
コマンドプロンプトが起動します。
gcc -v
と入力してEnterキーを押してください。
何やらずらずらと表示されますが、最後にgccのバージョンが表示されていれば上手くインストールされています。(下の画像ではバージョン8.1.0)
これでgccコンパイラがインストールできましたが、Visual Studio Codeなどのエディタと連携して使う場合やコマンドラインからパソコンの作業フォルダに作ったC言語プログラムをgccを使ってコンパイル(プログラムから実行形式ファイルを作る作業)する場合には不便です。
gccコンパイラの場所をWindowsに教えてあげるPath設定を最後に行います。
gccコンパイラのPath設定を行う
インストールしたMingw-w64フォルダのbinフォルダにOSのPathを通す、をご自分でできる方は以下項目を読み飛ばして構いません。
Path(パス)というのは、アプリケーションなどの在りかをOSに教えるための仕組みです。
今回は、gccコンパイラの場所をWinodwsに教えてあげます。
スタートメニューを右クリックしてシステムを選択します。
システムの詳細設定の部分をクリックします。
システムのプロパティというウインドウの詳細設定のタブが開いた状態になります。
環境変数(N)…のボタンをクリックします。
環境変数ウインドウが開きます。
XXXXのユーザー環境変数という項目内にPathという設定があれば編集(E)…ボタンをクリックします。(なければ新規(N)…でPathという項目を作成してから次の編集作業を行ってください)
ちなみに下枠のシステム環境変数にもPathという項目があります。こちらはすべてのユーザに対しての設定になります。すべてのユーザに対してgccコンパイラのPath設定をする場合はこちらのPath項目を選択してください。自分自身しか利用しないのであればユーザー環境変数にあるPath項目でOKです。
環境変数名の編集というウインドウが開きます。(写真の例では、3つのPathがすでに設定されています)
新規(N)ボタンをクリックします。
一番下のテキストボックスに入力が出来るようになります。
設定する文字列をPath名と呼びます。
Mingw-w64をインストールしたフォルダの中にあるmingw64フォルダの中のbinフォルダがPath名となります。ちなみにこの場所は、gcc.exeというgccコンパイラ本体が保存されている場所になります。
Path名の例を示します。
Path名の設定例1
わたしの場合インストーラ版Mingw-w64で指定したフォルダが C:\gcc でしたので、この後ろに\mingw64\bin を追加して以下のようなPath名となります。
C:\gcc\mingw64\bin
Path名の設定例2
圧縮解凍版のgccコンパイラを解凍後、Cドライブにmingw64フォルダを移動した場合、Path名は以下のようになります。
C:\mingw64\bin
インストールフォルダを変更していなければもっと長いフォルダ名となっているので、入力する場合はご自身のインストールフォルダに置き換えて入力を行ってください。
実際の設定画面
インストールフォルダ入力後Enterキーを押して確定し、OKボタンをクリックします。
この後、開いているウインドウがあればすべてOKをクリックして閉じます。
それではPathがきちんと設定されているかどうか確認してみます。
ウインドウキー+Rキーを同時に押してファイル名を指定して実行を開きます。
名前欄に
cmd
と入力してOKボタンをクリックして下さい。
黒い画面のコマンドプロンプトウインドウが開きます。
gcc -v
と入力してEnterキーを押して下さい。
インストールしたgccコンパイラのバージョンが表示されていればきちんとPath設定が出来ています。おめでとうございます!
イメージ
これでC言語でプログラムを開発できる環境が整いました。
もし、ここで
‘gcc’ は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
のようなメッセージが出た場合は、Path設定がうまくいっていません。もう一度Path設定の文字列部分を見直してください。
以上、WindowsにC言語開発環境 Mingw-w64(gccコンパイラ)を導入するでした。
お疲れさまでした!
コメント
言われた通りパスを指定しましたができませんでした。
こんにちは。管理人です。
状況が文面から推測できませんが、一つ確認として
同記事の「インストール後の確認」の項目で
スタートメニュー > MinGW-W64 project > Run terminal で開いて表示されるコマンドプロンプト画面をチェックしてみてください。
コマンドプロンプトの最初の文字列がお使いのパソコンにインストールしたgccへのパス名となります。(下の画像だとc:\gccの部分)
よって、「gccコンパイラのPath設定を行う」の項で、環境変数のPath項目に追加する文字列は、上記の画像の例だと全て半角文字で
となります。もう一度確認をしてみてください。
わかりやすい解説で大変ありがたかったです.
一点,軽微な誤植でしょうがpath設定のところの「編集(I)…ボタンをクリックします。」は「編集(E)…ボタンをクリックします。」の間違いかと思いました.
匿名さん、管理人です。
誤植の指摘ありがとうございます!修正しました。
pathの欄に書いた「C:\gcc\mingw64\bin」を一番上にするとpathが通ったという記事を実践したら、僕もpathが通せました。
確認お願いします。
環境変数のPath欄の順番は、上から下にむかって記述順にPathチェックしていく、という意味になっています。
あくまで優先順位なのでGCCコンパイラ(gcc.exe)が複数箇所にインストールされていない限りは記述順序は気にしなくて大丈夫です。
C:\gcc\mingw64\bin ではなく、C:\gcc\mingw32\bin にしてみたところパスが通せました。32bitか64bitかわからないからデフォルトでいいや~と32bitのほうをインストールしたからでしょうか。
このように詳しく解説してくださるサイトは本当に助かります。ありがとうございます。
おはようございます。管理人です。
gccコンパイラのダウンロードサイトは、ちょくちょく中身のファイルが変わったりします。
パスに関しては何とも言えないのですが、まずは良かったです。
このコメントのおかげでダウンロードサイトを見直したらサイト構成がかなり変わっていました。
現在(2021年10月14日)のダウンロードサイト構成に合わせて記事も編集しなおしました。ありがとうございました。
ダウンロード後のインストール方法に変更はないようです。
記載道理にダウロードを試していますがダウンロードできません。
記載されていること以外していないのですが、ダウンロード画面の途中でエラーが出てしまいインストールができないです。
エラー内容は「ファイルが正しくロードされていません」と表示されています。
こちら側の設定が原因かもしれないのでバージョン情報を一部記載しときます
システムの種類 64 ビット オペレーティング システム、x64 ベース プロセッサ
エディション Windows 11 Home
バージョン 21H2
OSビルド 22000.376
エクスペリエンス Windows 機能エクスペリエンス パック 1000.22000.376.0
こんばんは、管理人です。
わたしも先ほどMingw-w64のインストーラを手順通りにダウンロードしてみましたが、問題なくダウンロードできました。
2台別のPCで試しましたが大丈夫でした。相手先に問題はなさそうです。
もし可能なら以下を試すことをおすすめします。
・別のパソコンでダウンロードしてみる
・別のネット環境(別のWifi)などにつないで試してみる
・時間をおいて試してみる
お伝え頂いた環境でわたしの環境と違う点は、Windows 11であることですが、これが原因かどうかは分かりません。(わたしはWindows 10です)
ただ、先日知り合いの環境でWindows10の時はOffice Suite(マイクロソフトOffice互換ソフト)で、印刷できたのにWindows 11にしたら文字化けしてして印刷できなかったということがありました。一応お伝えしておきます。
パソコンは一台しか持ってないので試せてないですが
別のネット環境、時間を置くも試してみましたが同じ結果になりました。
関係あるかわからないですが、インストールしたMingw-w64のファイルのフォルダーを表示したところ、どうもめんどくさいところにあったようです。
エクスプローラーから辿れず、ツールバーの「ダウロード(Ctrl+j)」から「フォルダーに表示」を押さないと、表示ず何処にあるのか分からない所にありました。
なるほど、ダウンロード先が C:¥Windows や C:\Users\ユーザ名\AppData などのWindowsの特殊フォルダになっていたのかもしれませんね。
通常ダウンロード先のフォルダ設定は、
などですが、何らかの原因で別のフォルダにお使いのブラウザのダウンロード先が設定されていたのかもしれません。
こんにちは。
リンク先画面が異なっていてどれをDLして良いのかわからず困っています。
少し謎の日本語になっています。
おはようございます。
DLの場所はわかりDLしましたが、「正常にダウンロードされていません」The file has been downloaded incorrectly!となってしまいます。なぜなのでしょうか?
bit数の設定やgccフォルダの指定まではできるのですが、肝心なインストールができません。
メイさん、おはようございます。管理人です。
正常にダウンロードされていないということですので、まずはダウンロード先のフォルダ設定がWindowsなどの特殊フォルダ(c:\windows配下やC:\Users\ユーザ名\AppData配下など)になっていないことを確認してみてください。
わたしも先ほどダウンロードしてみましたが、問題なくできていました。
もし可能なら以下を試してみてください。
・別のパソコンでダウンロードしてみる
・別のネット環境(別のWifi)などにつないで試してみる
・時間をおいて試してみる
こんにちは。
返信ありがとうございます。
ダウンロード先がWindowsのCユーザー設定でした。
変更先をDに変えてもダウンロードできませんでした。
変更先はこのPCでは無理と言う事なのでしょうか??
別環境、別PCはありません。
スマホにダウンロードしてPCに転送しようとしたら
ウイルス疑いで送信できませんでした。
自分の環境では無理なのでしょうか・・・
C:\Users\ユーザ名\Downloads でもダメでした。
オフラインで解凍後インストールできました。
パス設定の編集画面が違い一行しか表示されませんでした。新規で設定しました。
明日 VSコードのインストールに進みます。
ありがとうございました。
こんにちは。
わたしも「The file has been downloaded incorrectly」のエラーが発生しましたが、他のサイトの
MinGWのインストールが失敗する – Qiita
https://qiita.com/kzrashi/items/4e0ab5949b69d4b333dd
を参考にしてインストールとgccコンパイラのバージョン表示に成功しました。
おかげさまでこれからC言語の勉強に励むことができます。
ありがとうございました。
honihoni さん、こんにちは。
「The file has been downloaded incorrectly」エラーへの貴重な情報ありがとうございます!
環境によってMindw-w64(gccコンパイラ)がインストールできる場合とそうでない場合があるんですね。
勉強になりました。
こんにちは。
インストーラーが起動した際に表示される画面で「Next>」を押すと
「Cannot download repository.txt」と表示されるのですが、
どのような措置を取ればよいでしょうか?
こんばんは、kiryuさん。
メッセージからすると、まずインターネットに接続されているか確認する必要があります。
インターネットに接続されていて問題ないようでしたら、管理者モードでインストーラを実行してみるのも1つの手かもしれません。
管理者モードでのインストーラ実行方法
インストーラを右クリックし「管理者として実行」を選択
kiryuです。
バタバタしていて久々にインストールを試みたところ、
「管理者として実行」などの処置を行わなくても実行できました!
迅速に対応していただいたのに、返信が遅くなり申し訳ありませんでした。
ありがとうございました!
Mingw-buildsと書かれた項目の下にあるリンクがSourceforgeからGitHubに変更されているので修正をよろしくお願いします。
管理人です。fractalさん、ご指摘ありがとうございます。
このサイトは頻繁にリンク先の修正が入りますね。
サイトの方修正しましたが、ご指摘いただいたGitHub側へのリンクではなく新たにできたSouceforgeへのリンク側の方がインストーラにたどり着きやすかったため、記事をそちらに書き換えました。
ありがとうございました。
こんにちは。
私もMingwをインストールしたいのですが、インストーラーが起動した際に表示される画面で「Next>」を押すと「Cannot download repository.txt」と表示され、そこから進みません。
インターネットには間違いなく接続されていますし、「管理者として実行」しても結果は同じでした。他に打つ手が見当たらず途方に暮れています。どうすればよいのでしょうか。
追記:
質問者です。
別のやり方を調べて無事にインストールできました。お手数おかけしました。
管理人です。
まずは良かったです!(わたしもインストールしてみたのですが、同じ状況にならずに原因が特定できませんでした)
どうやらネット環境等により「Cannot download repository.txt」のメッセージが出てダウンロード時にエラーになる場合があるようですね。
以下の英語サイトでも紹介されていました。
Mingw-w64 “Cannot download repository.txt” Error – stack overflow
https://stackoverflow.com/questions/51747358/mingw-w64-cannot-download-repository-txt-error
The file has been downloaded incorrectly
の表示が出てしまい、インストールできません。
時間をおいてみましたができませんでした。
手持ちのパソコンは3台中1台は問題なくできましたが2台はThe file has been downloaded incorrectlyが同じように表示されてしまいました。
何か解決方法はないでしょうか。
こんにちは。管理人です。
この「The file has been downloaded incorrectly」のエラーですが、PC環境によっては出てしまうらしく圧縮解凍版のgccコンパイラをインストールすることで解決できるようです。
手順をこの記事に追記しましたので、参考になさってください。
ダウンロード中「The file has been downloaded incorrectly」が表示されインストールできない場合
初めまして。
MinGW-W64 Online Installerからダウンロードしたexeファイルをvirustotalでチェックしたところ、
1 security vendor and no sandboxes flagged this file as malicious
Reanalyze
19b9a267a5b79913bf6a3a53cda83c3f7711cb6c879d48ccb97b4ed15c21fcf1
mingw-w64-install.exe
といわれ、どうやら1つのベンダーからマルウェア判定されているようなのですが、これは実行しない方がいいということなのでしょうか?
おはようございます、初心者さん。
管理人です。
わたしも先ほどMinGW-W64 Online Installerをダウンロードしてウイルスチェックしてみましたが、特に脅威はみつかりませんでした。
ただし、わたしの場合ウイルスチェックには、Windowsに付属の「Microsoft Defenderでスキャンする…」を実行しているだけです。(ちなみにいつもこれしか使っていません)
試しに、ダウンロードしたMinGW-W64 Online Installerを右クリックして
その他のオプションを確認 > Microsoft Defenderでスキャンする…
でスキャンしてみてください。(ただし他のウイルスチェックソフトをパソコンに入れているとこのメニューはでないかもしれません)
わたしの考えですが、ダウンロードしたOnline Installerという種類のファイルの性格上、マルウエア判定されることがあるかもしれません。
もし気になるようでしたら、この記事の目次にある「ダウンロード中「The file has been downloaded incorrectly」が表示されインストールできない場合」
の項目を参照して圧縮形式で提供されているgccコンパイラをインストールしてみてください。
圧縮形式で提供されているgccコンパイラは、7z形式なのでWindowsの場合、追加でフリーソフト(7-Zip等)をインストールする必要があるので、少々面倒ですがこちらでもgccコンパイラのインストールは可能です。
変な話になりますが、virustotalは、沢山のウイルスチェック・マルウエアチェックを使ってチェックするので、問題ないソフトがマルウエア扱いされることも増えるということも頭に入れておくとよいです。