Debian GNU/Linux (Sarge)でのLaTeX導入備忘録

現安定版Sarge (Debian GNU/Linux 3.1)での日本語TeX簡易導入のための備忘録です。

Debianは「一度インストールすれば二度と再インストールの必要がない」と言われる非常に高度で厳密なパッケージ管理を利用した、安定でフリーなディストリビューションです。

以降は Sarge (2005-06現在stable版)を対象とした記述ですが、パッケージのバージョン情報などが、2004年10月に編集した時点のままのものがあります。Sargeの公式リリース後に、日本語TeXシステムを構築された方、加筆修正をぜひお願いします。

内容

install

apt で楽々です。deb パッケージの内容に不満がある方はソースから入れてください。 最低限の日本語TeX環境(日本語でPDF作成まで程度)ならば,Debian での teTeX 導入は,おそらく Windows や RedHat 系に比較してかなり簡単です。

apt-lineの編集

gs-cjk-resourcescmap-adobe-japan1など cmap 関連のパッケージを入れるためには apt-line に non-free を追加しておく必要があります。/etc/apt/sources.list をこんな感じにしておきます

deb http://リングサーバ/pub/linux/debian/debian sarge main contrib non-free
deb http://security.debian.org/ sarge/updates main contrib non-free

これで一度

apt-get update

しておけば、次のGhostScript関連や後述のcmapもインストールできます。(Thanks むねはるさん)

GhostScript

GhostScript 関連(gs gs-cjk-resource)をまずは入れておきます。

# apt-get install gs gs-esp gs-cjk-resource

gs-ja gs-esp を入れないと日本語のPostScriptファイルが文字化けします。
(2004/12/10 追記 日本語の表示には、gs-cjk-resource に加えて cmap-adobe-japan1 (と必要ならば cmap-adobe-japan2) のインストールが必要です。)
複数の gs-* を切替えて使うには、

# update-alternatives --config gs

しましょう。

teTeX / pTeX

続いてteTeX / pTeX一式です。これで依存関係を考慮して日本語 TeX も含めた基本セットが入ります。

# apt-get install ptex-bin xdvik-ja dvipsk-ja 

ptex-bin を選択すると自動で ptex-base tetex-base tetex-bin tetex-extra などが入ってきます。本家 apt は素晴しいですね ;-)

奥村さんの新クラスファイルなど

引き続き必要なパッケージの追加。必要不可欠な奥村さんのクラスファイル(2005.03.19-1)もこれで使えます。

# apt-get install okumura-clsfiles vfdata-morisawa5

設定中に指示されたように、日本語で dvips などを使用する場合は、最後に root で

# jisftconfig add

とするのを忘れずに。

mktexlsrの代わりに、debianでは

# update-texmf

が使えます。

dvipdfmx

install

Debian パッケージのdvipdfmx (20040411-4) で日本語 PDF を作成するための導入と設定( Deb パッケージの dvipdfmx はかなり古いので、最新版の dvipdfmx で凝った日本語 PDF を作成する必要がある人は ソースから make した方が良さそうです)。 aptならば

# apt-get install dvipdfmx

で必要に応じてパッケージを加えてください。依存関係はこんな感じ。

FAQ 「変換できないじゃん」

変換時の以下のエラー

hoge.dvi -> hoge.pdf
[1
Can't find encoding file: H

Output file removed.

はFAQだそうです。dvipdfmx の Readme にもありますが、設定ファイル /etc/texmf/texmf.d/50dvipdfmx.cnf を編集する必要があります。 内容は1行で

CMAPINPUTS=.;/usr/share/fonts/cmap/adobe-japan1//;/usr/share/fonts/cmap/adobe-japan2//
;/usr/share/fonts/cmap/adobe-gb1//;/usr/share/fonts/cmap/gs-cjk-resource//

としています。最後に texmf を更新。

# update-texmf

以上です。

jsarticleで変換エラーになる

これは dvipdfmx のバグで、sid の最新の dvipdfmx 1:20040411-3 では修正されています。(2004-09-19) 参考情報

2004-09-11現在、jsarticleで作成したdviファイルを

$ dvipdfmx hoge.dvi

すると

hoge.dvi -> hoge.pdf
[1kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 0+555/600 --dpi 555 rml-jis
mktexpk: don't know how to create bitmap font for rml-jis.
kpathsea: Appending font creation commands to missfont.log.
** Fatal error: Could not locate a virtual or a physical font file for 'rml-jis'.
** ERROR **

と刺さります。これはどうやら

# jisftconfig add

が正しく機能せず必要な情報がdvipdfmxの設定ファイルに追加されていないためのようです。

対処法としては

/etc/texmf/dvipdfm/dvipdfmx.cfg

の最後に

f jis-cjk.map

を追記してください。最後に

# update-texmf

もお忘れなく。 update-texmf コマンドによって更新されるのは、/etc/texmf/texmf.cnf で、dvipdfmx.cfg とは関係ありません。

使用時のTips

インストールが終わって、使用していく上での情報はこのWikiのトップページからいろいろと得られます。

Debian(sarge)のkpathseaライブラリは若干古め(teTeX-2.0.2由来)なので、OpenTypeフォントを取り扱うことができません。そのため、dvipdfmxはOpenTypeフォントをother program binaryというファイル種別として探索します。つまり、OpenTypeフォントの探索パスは、以下のコマンドによって表示されるパスになっています。

% kpsewhich -progname dvipdfm -showpath="other binary files"

たとえば、~/.fonts/にOpenTypeフォントをインストールしている場合は、以下のように環境変数を設定すると、dvipdfmxから見えるようになります。

% export DVIPDFMINPUTS=.:"$HOME"/.fonts:

Last-modified: 2006-01-03 (火) 12:11:43 (36d)