MinGW-w64とmsys2とサクラエディタで作る、C言語開発環境 後編
環境の設定
環境の設定
前編でMinGW-w64やmsys2のダウンロードと解凍/インストールを行いました。後半は環境設定を行ってこれらをコマンドプロンプトから使えるようにしていきます。
後半の流れ
後半では以下のようなことをやっていきます。
・Msys2の設定
・MinGW-w64とMsys2のパスの設定
・設定出来ているかどうかの確認
・HelloWorld!を表示するプログラムの作成
では後半を見ていきましょう。
あ、あれ、サクラなんとかが抜けてるような・・・?
→コマンドプロンプトからサクラエディタを起動できるようにしてみた
Msys2の設定
Msys2のインストールは終わりました。続けてMsys2の設定を行って利用できるようにしていきます。
まずはMsys2のshellを開きます。コマンドプロンプトを開き以下のように入力します。※バックスラッシュは半角の¥マークになっている場合があります。
筆者は「C:\msys64\」というフォルダの中にMsys2をインストールしました。違うフォルダにインストールした場合は該当箇所をご自分の個所に合わせて修正してください。筆者と同じディレクトリにMsys2をインストールした場合はコピペでOKです。
C:\msys64\msys2_shell
すると、以下のような画面が開きます。(ユーザ名、PC名はご自身の環境にあったものが出るはずです。)
ここで以下のコマンドを打ち込み更新をかけます。
$ update-core
しばらくすると終了するので続けて以下のコマンドを打ち込みます。
$ pacman -Su
こちらもしばらくすると終了します。終わったら「exit」と打って終了しましょう。
ここまで作業すると、「C:\msys64\usr\bin」というフォルダが出来てその中にたくさんのexeファイルが入っているはずです。これでmsys2の準備が整います。
パスの設定
Msys2の設定が終わりました。これで準備は完了ですが、このままでは使い勝手があまりよくないので環境変数を設定してコマンドプロンプトから操作できるようにします。
「毎回フルパス打ち込んでやるぜぇ~ワイルドだろぅ~」という猛者はこの設定は無視しましょう。
環境変数の設定画面を開き「Path」の項目を選択して「編集」をクリックします。
※本来は値が入っていますが、画像では伏せています。
※環境変数の設定画面の開き方がわからない方はこちらの記事の中ほどに「パスの設定」という部分がありますのでご参照ください。
「Path」の項目に以下の2つを追加します。
C:\mingw64\bin
C:\msys64\usr\bin
※MinGW-w64とmsys2を筆者と同じフォルダにインストールした場合は以下の値を現在の「Path」の末尾に足して「OK」をクリックします。セミコロン;を忘れないように注意してください。
;C:\mingw64\bin;C:\msys64\usr\bin
設定が完了したらもう一度「OK」をクリックすれば設定が反映されます。
設定の確認
以上で設定は完了です。うまく設定できているか確認しましょう。
まずはMinGW-w64の設定の確認です。コマンドプロンプトを開いて以下のコマンドを入力します。
gcc
コマンドプロンプト上に
gcc: fatal error: no input files compilation terminated.
と表示されればMinGW-w64の設定が出来ています。
次にMsys2の設定の確認です。コマンドプロンプトに以下のコマンドを入力します。
ls
コマンドプロンプト上にたくさんのファイル名が表示されればMsys2の設定が出来ています。もし以下のように表示された場合は失敗しています。
'ls' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
うまくいかないものがあれば、手順を見直してもう一度やってみてください。
動作確認~HelloWorld!と表示する~
HelloWorld!
ここまででC言語の開発環境は整いました。設定ばっかりでそろそろ飽きてきたのでHelloWorld!と表示する簡単なプログラムを作って動作をチェックしてみましょう。
ソースコードの作成
まずはソースコードを作成します。
コマンドプロンプトを開いて以下のように打ち込みます。
notepad hello.c
メモ帳が開き、hello.cというファイルを作るかどうか聞かれるのでOKをクリックします。
メモ帳が開いたら以下のように打ち込んで上書き保存します。全角スペースが入らないように注意してください。
※ソースコードの一部にエンコードがかかっていたので修正しました。2016.04.01.
#include<stdio.h> int main(void){ printf("Hello World!"); }
これでソースコードの作成は完了です。
コンパイル
ソースコードが作成出来たらコンパイルを行います。コマンドプロンプトに戻って以下のコマンドを実行しましょう。
gcc hello.c
しばらくして何も画面に出てこなければ成功です。後は実行するのみです。
以下のように表示された場合は、ソースコードのファイル名やコマンドのファイル名の部分にミスがないか確認しましょう。
gcc: error: hhello.c: No such file or directory gcc: fatal error: no input files compilation terminated.
この例ではコマンドをgcc hhello.cと打ってエラーになっています。
以下のように表示された場合はソースコードが間違っているのでよく見て間違いを直しましょう。
hello.c: In function 'main': hello.c:3:1: error: 'system' undeclared (first use in this function) system.out.println("Hello World!"); ^ hello.c:3:1: note: each undeclared identifier is reported only once for each function it appears in
この例ではsystem.out.printlnという、C言語ではない言語で書いた部分がエラーになっています。それC言語ちゃう、javaや
systemの先頭のsに^がついています。^がついている場所が間違いのヒントになることがあります。ヒントをもとに間違いを探してみましょう。
どうしても間違いがわからないなら、ソースコードをコピペしてくれても良いんだからね!!ただしコピペの場合、一部文字が化けたり、全角スペースなどが入ってうまくいかない場合もあるんだからね!!結局手抜きするなってことだお(^ω^
実行
コンパイルに成功したらいよいよ実行してみます。コマンドプロンプトで以下のコマンドを実行しましょう。
a.exe
以下のように表示されれば成功です。
Hello World!
これで今日からあなたもC言語のプログラマです。やったね!
・・・あれ、サクラエディtなんか大事なことを忘れてるような・・・?
To be continued…
つづきはこちら↓
コマンドプロンプトからサクラエディタを起動できるようにしてみた
【参考文献】
今回の記事の前編・後編はこちらの記事を参考に執筆いたしました。
Windows に MinGW-w64 と MSYS を導入する
Qt で MinGW-w64 を使用する際に必要になるスレッドモデルと例外機構の選択について
実践力が身につくC言語講座 連載リンク
競技プログラミングをイメージしたライブラリ活用講座
競技プログラミング風-標準Cライブラリ入門 連載
アルゴリズムをマスターして技術力アップ!
実践アルゴリズム講座 連載
パズルゲームの解析をテーマにしたC++講座
ゲーム解析プログラミング 連載