== なにこれ == * 後期になると、1年の人は「基礎プログラミングおよび演習」、2年のI科の人は「プログラミング演習」という楽しい演習が始まります。 * 「基礎プログラミングおよび演習」はC言語の基礎を学ぶ非常に意義深い演習で、「プログラミング演習」はC言語を用いて初歩的なデータ構造やアルゴリズムを実装するという楽しい修行です。 * 当然プログラムを書いては動かしを繰り返すことになりますが、以下の行為の繰り返しは割とやっているとだるいです。 {{{ プログラムを書く→gccコマンドを打つ→プログラムの実行コマンドを打つ→間違っていたら直す }}} * このページでは、上の手順のうち、コマンドを打つところを楽にする方法を提案します。 == 準備 == * コンパイルしたいプログラムをおいているディレクトリに以下のテキストをMakefileという名前で保存します。 * 一段下がっているところは、スペースではなくてTabキーを押して下げるようにしてください。そうでないと動きません。 * 書くのが面倒くさい人用に、ダウンロードできるようにしました。[[attachment:Makefile]] {{{ % : %.c gcc -O2 -o $@ $< ./$@ %-math : dest = $(subst -math,,$@) %-math : %.c gcc -O2 -lm -o $(dest) $< ./$(dest) }}} == 使い方 == * hoge.cというプログラムを書いたとします。 * hoge.cをコンパイルして実行したくなったら、次のコマンドを実行します。 * hoge.cがhogeという名前のファイルにコンパイルされて勝手に実行されます。 {{{ make hoge }}} * math.hをインクルードしているプログラムの場合、-lmを付けないとコンパイルに失敗することがあります。その時は次のコマンドを実行します。 * hoge.cを-lmをつけてhogeという名前のファイルにコンパイルし、勝手に実行します。 {{{ make hoge-math }}}