ログイン
編集不可のページディスカッション情報添付ファイル
"alstamber/MakeForFreshmanAndSophomore"の差分

MMA
3と4のリビジョン間の差分
2013-10-09 17:06:24時点のリビジョン3
サイズ: 2144
編集者: alstamber
コメント:
2014-10-19 14:04:27時点のリビジョン4
サイズ: 1718
編集者: alstamber
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 18: 行 18:

%-math : dest = $(subst -math,,$@)
%-math : %.c
 gcc -O2 -o $(dest) $<
 ./$(dest)
行 32: 行 27:
 * math.hをインクルードしているプログラムの場合、-lmを付けないとコンパイルに失敗することがあります。その時は次のコマンドを実行します。
  * hoge.cを-lmをつけてhogeという名前のファイルにコンパイルし、勝手に実行します。
{{{
make hoge-math
}}}

なにこれ

  • 後期になると、1年の人は「基礎プログラミングおよび演習」、2年のI科の人は「プログラミング演習」という楽しい演習が始まります。
    • 「基礎プログラミングおよび演習」はC言語の基礎を学ぶ非常に意義深い演習で、「プログラミング演習」はC言語を用いて初歩的なデータ構造やアルゴリズムを実装するという楽しい修行です。
  • 当然プログラムを書いては動かしを繰り返すことになりますが、以下の行為の繰り返しは割とやっているとだるいです。

プログラムを書く→gccコマンドを打つ→プログラムの実行コマンドを打つ→間違っていたら直す
  • このページでは、上の手順のうち、コマンドを打つところを楽にする方法を提案します。

準備

  • コンパイルしたいプログラムをおいているディレクトリに以下のテキストをMakefileという名前で保存します。
    • 一段下がっているところは、スペースではなくてTabキーを押して下げるようにしてください。そうでないと動きません。
    • 書くのが面倒くさい人用に、ダウンロードできるようにしました。Makefile

% : %.c
        gcc -O2 -o $@ $<
        ./$@

使い方

  • hoge.cというプログラムを書いたとします。
  • hoge.cをコンパイルして実行したくなったら、次のコマンドを実行します。
    • hoge.cがhogeという名前のファイルにコンパイルされて勝手に実行されます。

make hoge

alstamber/MakeForFreshmanAndSophomore (最終更新日時 2014-10-19 14:08:07 更新者 alstamber)