SSブログ

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時間を越える作業も無駄ではなかったはずです。


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

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。