So-net無料ブログ作成

dviからpdfへ変換できない [プログラム]

毎度debian(sid)でaptitude upgradeで、texliveが動かなくなりました。
以前のtexからtexliveに乗り換えたときは、漢字コードが変わっていたため動かなかったので仕方がないのですが、今回はちょっと違います。

「dviファイルは作れるけど、そこから先、psやpdfへ変換できない」というものです。
前回の問題のときには、dvipdfmxを使わずにdvi2psを使ってpsを出力後にps2pdfでpdfへ変換して、なんとか逃れていました。
今回は、dvi2psが動かなくなりました。1ページ目で、メモリの使用量が爆発するようで、仮想記憶を使った挙句、エラーです。
ともかく一度dvipdfに戻ってしましょう。しかし…
$ dvipdf test.dvi
dvips: Can't open font metric file dmjsy10.tfm
dvips: I will use cmr10.tfm instead, so expect bad output.
dvips: Can't open font metric file dmjkf10.tfm
dvips: I will use cmr10.tfm instead, so expect bad output.
dvips: ! virtual recursion stack overflow
前回と状況は変わらず、動かないままです。今回はちょっと調べてみました。
ググってみると、dmjsy10.tfmとdmjkf10.tfmは、NTT JTeXに入っているらしいです。
$ dpkg -l jtex-bin
rc  jtex-bin           2.1-2           NTT Japanese TeX binary files
なるほど、これが原因でしょうか? インストールしましょう。でも…
$ sudo aptitude install jtex-bin
 (略)
jtex-bin (2.1-2) を設定しています ...
mktexlsr: Updating /usr/local/share/texmf/ls-R...
mktexlsr: Updating /var/lib/texmf/ls-R-TEXLIVEMAIN...
mktexlsr: Updating /var/lib/texmf/ls-R-TEXLIVEDIST...
mktexlsr: Updating /var/lib/texmf/ls-R-TEXMFMAIN...
mktexlsr: Updating /var/lib/texmf/ls-R...
mktexlsr: Done.
Make format files of jtex-bin. This may take some time. ...
  The format file of `jtex' is NOT built successfully.
  Visit `/var/lib/texmf/web2c/jtex.log' for details.
dpkg: jtex-bin の処理中にエラーが発生しました (--configure):
 サブプロセス インストール済みの post-installation スクリプト はエラー終了ステータス 1 を返しました
となってしまいます。同じトラブルに遭っているのは私だけじゃないはずだ!と、
「The format file of `jtex' is NOT built successfully.」でググると、まさにそれがヒットします。
http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=5;bug=668802

Debian Bug report logs - #668802
jtex-bin: fails to install: The format file of `jtex' is NOT built successfully.
version graph
Package: jtex-bin; Maintainer for jtex-bin is TSUCHIYA Masatoshi <tsuchiya@namazu.org>; Source for jtex-bin is src:texfam.
Reported by: Andreas Beckmann <debian@abeckmann.de>
Date: Sat, 14 Apr 2012 13:18:25 UTC
Severity: serious
Found in versions jtex-bin/2.1-2, texfam/1.4-2
みたところ、「serious」なのに、全然直してくれてないようです。困るぅ。

実際のところ、こんな調子ですからtexはあんまり使いたくないというのが正直なところです。すぐ動かなくなるから。texのシステムが複雑過ぎるのが問題なんででしょうが。
それを回避するために、ユーザとしては、texを単に安定して動かすため「だけ」に、1マシン(仮想マシンでも可)を用意しなければならないのでしょう。しかし、それは本末転倒で、texシステムが安定してなきゃならないはずです。
ほんとF***** texアップデートです。


ということで、頻繁なアップデートでTeXがしばしば使えなくなってしまうのは困るので、もうdebianのtexliveパッケージを捨てることにしました。やってられっかよ!ということで。texliveの本家からインストールします。なお、texliveの本家のインストールは、特定のディレクトリにインストールするので、(完全な共存は手間ですが=texmfとか)両方同時に入れてチェックしてから移行することができます。
いくつかの「texlive インストール」でググって調べますが、どうやら最近(2011)のtexliveは単にインストールするだけで日本語までいけそうです。というわけで、2011のバージョンに限ってインストール方法を調べましょう。
http://www.tug.org/texlive
から、How to acquire TeX Live: downloadのdownloadで
http://www.tug.org/texlive/acquire-netinstall.html
へ行って、
install-tl-unx.tar.gz
を取ってきて
$ tar xzf install-tl-unx.tar.gz
$ cd install-tl-20120502$
$ sudo ./install-tl
です。「<L> language collections」でいらないのを外すとちょっと容量が減ります。
で、「<I> start installation to hard disk」を実行します。

表示をみてると、ASCII順にパッケージを取ってきてるようです。ということは最後はz*でしょう。30分でまだaで、予測では12時間だとのことす。一日仕事になっちゃいましたが、回線が細いので仕方ないです。

途中でネットワーク不良のため、アボート。やりなおし(restart)です。しかし、特定のファイルのところで同じエラーを起こして止まってしまいます。
なんで? ええぃ、自分で取ってきてやるよ、とwgetで取ってくることにしました。このファイルだけが原因かもしれませんしね。
$ cd /usr/loca/texlive/2011/temp
$ sudo wget ftp://...
問題なく取ってきますね。ともかく、やりなおし(restart)です。
$ sudo ./install-tl --profile installation.profile
今度はその先で止まりました。うーん、ネットワークが不調なのでしょうか。でも、何度かやり直しているうちに動き始めました。最後に
Welcome to TeX Live!

Summary of warning messages during installation:
TLDownload::get_file: response error:
500 Server closed connection without sending any data back
permanent server connection set up, but downloading did not succeed!   Retrying with wget.

Logfile: /usr/local/texlive/2011/install-tl.log
と表示されて、インストール終了です。続きは(というか、QuickInstallガイドの)
http://www.tug.org/texlive/quickinstall.html
を読んで、パスを設定して、
PATH=/usr/local/texlive/2011/bin/i386-linux:$PATH
テストしろと、ということでした。いきなり、debianのtexliveで失敗してたやつを実行しますと、全然問題なく終わりました。
よし、これで、debianパッケージの動かないtexliveを捨てることができます。でもその前に、rootのPATHは本家texlive側でなく、debian側であることを確認しておきましょう。
# which ptex
/usr/bin/ptex
# aptitude purge texlive-common texlive-base texlive …
これで、texのアップデートトラブルから解放されたのだと思うと、12時間を越える作業も無駄ではなかったはずです。


共通テーマ:パソコン・インターネット