最近のlatexのコンパイルにはLatexmkを使うと良いようです.
platex -> bibtex -> platex -> dvipdfmxのような一連の処理をまとめてやってくれます.
カレントのディレクトリに.latexmkrcを作成することでプロジェクトごとの設定を行います.適切な設定ファイルを配置することで,WindowsでもUnixでも(たぶんMacでも)常に1コマンドでPDFを生成することができます.
$ latexmk TEX_FILE.tex
さらに
.latexmkrc
@default_files = ('TEX_FILE.tex');
と指定することで,build対象の指定を省略できます.
(ここではTexLiveがインストールされている前提です)
英語のみの場合
pdflatexを使う場合
.latexmkfc
# !/usr/bin/env perl
$pdf_mode = 1
pdflatexでPDFを出力するようにモードを変更します.
latexを使う場合
.latexmkfc
# !/usr/bin/env perl
$pdf_mode = 3
$dvipdf = 'dvipdfmx %O -o %D %S';
latex + dvipdfmxで出力します.
日本語を含む場合
platexの場合
latex + dvipdfmでPDFを出力するモード3に変更し,platexとdvipdfmxを使うように設定します.
.latexmkrc
# !/usr/bin/env perl
$pdf_mode = 3;
$latex = 'platex -halt-on-error';
$latex_silent = 'platex -halt-on-error -interaction=batchmode';
$bibtex = 'pbibtex';
$dvipdf = 'dvipdfmx %O -o %D %S';
$makeindex = 'mendex %O -o %D %S';
uplatexの場合
.latexmkrc
# !/usr/bin/env perl
$pdf_mode = 3;
$latex = 'uplatex -halt-on-error';
$latex_silent = 'uplatex -halt-on-error -interaction=batchmode';
$bibtex = 'upbibtex';
$dvipdf = 'dvipdfmx %O -o %D %S';
$makeindex = 'mendex %O -o %D %S';