[EconWiki]
Makeの使い方 の編集
 Google	   
 WWW   sugi-shun.com/econwiki
[ トップ ]   [ 編集 | 差分 | バックアップ | 添付 | リロード ]   [ 新規 | 一覧 | 単語検索 | 最終更新 | ヘルプ ]
   
 
     タイムスタンプを変更しない   
テキスト整形のルールを表示する
トップ    編集	 差分	バックアップ	 添付	 複製	名前変更 リロード    新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Site admin: SUGIYAMA Shunsuke
PukiWiki 1.4.6 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-ji. Powered by PHP 5.2.17. HTML convert time: 0.008 sec.
|このページについて|

''概要'':このページでは、[[Makeの使い方]]を蓄積します。


''親ページ'':このページの親ページは[[計量経済学のためのITスキル]]です。

|目次|
#contents
----

*makeの使い方 [#s09f12bd]
TeXを用いて研究論文を書いている場合、一つの論文を完成させるのに様々なファイルが必要になることがありますが、後から書き足したり図等を修正した際に、どのファイルをコンパイルしたかわからなくなり、結局、全てのファイルをコンパイルし直さなければならなくなったといった経験はないでしょうか。こういった問題はmakeを使用することで解決することができます。makeはファイルの更新時刻を比較し、必要なものだけをコンパイルし、自動でターゲットとするファイルを作成してくれます。

例えば、以下の様な構造でファイルが作成されるとします。

plot.R → fig.eps ↘

     main.tex → main.dvi → main.pdf

plot.Rからfig1.epsが作成され、fig1.epsとmain.texからmain.dviが作成され、更にそれを元にしてmain.pdfが作成されるといった具合です。この様に、一つのファイルを作成するのにいくつものファイルが階層構造を成している様な場合でも、makeを利用することで必要なものだけをコンパイルし、簡単にファイルの変更を最終生成物に反映させることができます。

*makeのインストール [#a8d5936b]
Mac OSXやLinuxであれば、基本的には最初から入っているので特にインストールする必要はありません。Windowsの場合は、MinGWもしくはCygwinの導入が必要です。

*Makefileの記述方法 [#z38b965e]
まず、ソースファイルの置いてあるフォルダにMakefileという名前のファイルを作成します。そして、そのファイルに、

 作成ファイル: 元になるファイル
    コマンド

となるように最終的に生成されるファイルから順に記述していきます。この際、コマンドの行は先頭から4文字の空白、もしくはタブを入力することに気を付けて下さい。emacsではMakefileを作成するモードがあるのでそれを利用すると便利です。上の例では、

 main.pdf: main.dvi
    dvipdfmx main.dvi
 main.dvi: main.tex fig.eps
    platex main.tex
 fig.eps: plot.R
    R CMD BATCH plot.R
という様に記述していくことになります。あとはファイルの置いてあるフォルダで

 $make
と入力することで、必要なファイルはコンパイルし直され、ファイルの変更がターゲットとするファイル(ここではmain.pdf)に反映されます。

マクロやサフィックスについては、参考書籍にある文献を参照して下さい。


*Reference [#u354321a]

**参考書籍 [#k205a526]
-[[GNU Make:http://www.amazon.co.jp/GNU-Make-%E3%83%AD%E3%83%90%E3%83%BC%E3%83%88-%E3%83%A1%E3%82%AF%E3%83%AC%E3%83%B3%E3%83%90%E3%83%BC%E3%82%B0/dp/4873112699/ref=sr_1_2?ie=UTF8&s=books&qid=1230302195&sr=8-2]]
**リンク [#v45e2533]


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS