UTF-8が使えるplatexをUbuntu12.04でコンパイルする
(この記事は以前に http://nanatomo.com/program/766 で公開されていたものです。)
ptex-binパッケージでインストールされる platex はUbuntu 12.04の時点でEUCでエンコードされたtexファイルしか受け付けません。試しに $ platex -v を実行すると、
$ platex -v pTeX 3.141592-p3.1.11 (EUC) (Web2C 7.5.4) kpathsea version 5.0.0 Copyright (C) 1999 D.E. Knuth. (以下略)
という出力が得られます。「(EUC)」の文字が見られるならば、EUCのみに対応しています。
以下のページを参考にしました。
コンパイルの準備
platexのみを使うため、その他 dvipdfm などのバイナリはインストール済みとして話を進めます。
このページに従い tetex-src-3.0.tar.gz、tetex-texmf-3.0po.tar.gz、ptetex3-20YYMMDD.tar.gz(最新のもの)をダウンロードし、3ファイルとも同じディレクトリに移動させます。ディレクトリはどこでも良いのですが、コンパイル後のインストールで同一ディレクトリであると少々不具合があるので別のディレクトリを使用します。そして「ptetex3-20YYMMDD.tar.gz」のみを展開します。ディレクトリの中は次の状況になっているでしょう。
$ ls -l 合計 108076 drwxrwxr-x 11 nanase nanase 4096 8月 20 23:31 ptetex3-20090610 -rw-r--r-- 1 nanase nanase 6502684 8月 20 21:56 ptetex3-20090610.tar.gz -rw-r--r-- 1 nanase nanase 12749314 8月 20 22:33 tetex-src-3.0.tar.gz -rw-r--r-- 1 nanase nanase 91402377 8月 20 22:37 tetex-texmf-3.0po.tar.gz
必要なパッケージのインストール
$ sudo apt-get install gcc make perl libxaw7-dev flex bison nkf gs-cjk-resource cmap-adobe-japan1 cmap-adobe-japan2 ttf-sazanami-gothic ttf-sazanami-mincho
既にTeXの環境がある場合はほとんどインストールするものがないはずです。
my_optionの編集
展開で作成されたディレクトリ内の「my_option.sample.en」または「my_option.sample」(エンコードはEUC-JPで!)を開き、必要に応じて設定を変えます。詳細は「my_option.sample」に書かれていますが、要点は
#コメントを外してUTF-8を有効に KANJI_CODE=UTF8 #インストール先を指定 PREFIX=(インストール先)
だけです。コンパイルが非常に長いため、適宜コメントアウトして調整することをおすすめします。設定を変更し終えたら、「my_option」として保存します。
7font-search.shの修正
Ubuntu用にディレクトリの記述を修正します。「7font-search.sh」の137行あたりを
f8sazanami-min /usr/share/fonts/sazanami/mincho f8sazanami-goth /usr/share/fonts/sazanami/gothic
に変更します。
stdio.hの修正
コンパイル中、getlineが衝突しているとエラーが出ます。これはstdio.h中のgetlineが原因です。万が一のためにstdio.hのバックアップを作り、元のstdio.hにあるgetlineをコメントアウトしておきます。
/* extern _IO_ssize_t getline (char **__restrict __lineptr, size_t *__restrict __n, FILE *__restrict __stream) __wur; */
コンパイル終了後に元に戻しておくことを忘れずに!
.texmf-varのリネーム
ホームディレクトリ直下に「.texmf-var」というディレクトリがある場合はこれを必ずリネームしておきます。コンパイル終了後に戻せばOKです。
コンパイルとインストール
$ make
$ sudo make install
makeは非常に時間がかかります。 「Congratulations! TeX environment seems to work properly.」と表示されればコンパイル成功です。
make install でエラーが出ることがありますが、インストール先ディレクトリに「bin/platex」があれば問題ありません。
確認として
$ ./platex -v pTeX 3.141592-p3.1.10 (utf8.euc) (Web2C 7.5.4) kpathsea version 3.5.6 ptexenc version 0.999 Copyright (C) 1997-2004 D.E. Knuth. (以下略)
あとは自分でパスを通すなり、シンボリックリンクを張るなり、エイリアスを付けるなりしてください。
ところで、binディレクトリには platex 以外にも dvipdfm(x) などがありますが、私の場合では任意の日本語フォントが使えませんでした。コンパイルした platex を使い、あらかじめインストールした dvipdfm(x) を使うと問題なくPDFを作ることができました。