コンパイルとビルドとメイクの違いを教えてください。 また、それぞれの作業の順序も教えてください。

コンパイルとビルドとメイクの違いを教えてください。 また、それぞれの作業の順序も教えてください。 コンパイルとビルドとメイクの違いを教えてください。 また、それぞれの作業の順序も教えてください。

C言語関連25,181閲覧

ベストアンサー

9

コンパイルとは *.c ファイル とか *.cpp ふぁいるなど、 テキスト形式で書かれたプログラムソースを 中間ファイル *.obj に変換すること。 この時点で概ね機械語に翻訳されているが、 変数名や関数名の情報などは たの *.obj ファイルとの結合の際に必要となるので残されている。 ビルドとは 以前はリンクと言った。 複数の *.obj ファイルから *.exe ファイルを作り上げること。 *.obj ファイルが一つしかないこともある。 メイクとは コンパイルの対象となるファイル、 ビルドの対象となるファイルに関する情報を 一ファイルとして保存しておき、 これに基づいてコンパイル、ビルドを効率的に 行なうシステム。 更新されたファイルがあれば それだけを対象に コンパイル、ビルド を実行するので、 時間を無駄にすることがない。

9人がナイス!しています

その他の回答(1件)

0

buildは目的のプログラムをこしらえるための、makeの特別な場合と考えればよいと思います。 makeやnmakeコマンドは、別のファイル(デフォルトはMakefile)にあらかじめ書かれた内容と関連するファイルの更新日時に応じて指定されたコマンドを実行します。この中にコンパイル・リンクするような指定をすれば目的のプログラムがbuildされるわけです。 Windowsの統合環境ではMakefileに相当するファイルが自動的に生成されますが、コマンドを使うときはまずMakefileを作る必要があります。Makefileの書き方、makeまたはnmakeコマンドの実行方法については書ききれないので↓のページにあるリンクの記事をご覧ください。 UnixやLinuxのプログラマはmakeを良く使います。最初はちょっとたいへんかもしれませんが、一度覚えたら手放せなくなります。 http://www.microsoft.com/japan/msdn/library/ja/vccore/html/_asug_Overview.3a_.NMAKE_Reference.asp