tex環境に一苦労

2週間くらい前に経過をメモしておいたのをエントリー.


opensuseで日本語の論文作成環境を整えようと思いplatexを使うために
yastでtexliveをインストールしてみました.
ところがインストールされるlatexのバージョンが3であるために
うちで使っているクラスファイルが使えませんでした.
# 必要なのは(p)latex2eでした


http://made-in-tomo.jugem.jp/?eid=121
こちらで紹介されている方法を,
texliveが既にインストールされている状態で行うと,
どこかでコンフリクトしているのか,
platexが途中でバージョン違いのエラーを出してしまいます.


さっきインストールしたtexlive一式(このとき何故かtexlive-binは残っていた)を
削除して,上の方法でtetexパッケージをインストール.
わたしの環境は少し古いのでコンパイルに30分以上掛かりました.


ここまででplatexは通るようになったのですが,
今度は

** ERROR ** Unable to find TFM file "goth10"

というエラー.
ちなみにid:pneumaster:20070203:1170445899の時とは環境は違います.


つらつらと,ここまで経過を書いていますが,
結局のところ解決はしたものの,なぜ解決したのかは分かりませんでした.



続きです.


http://rpmfind.net/linux/RPM/suse/updates/10.2/i386/rpm/i586/te_ptex-3.0-60.i586.html
の中にgoth10.tfmが入っているようなので,
この中から取り出してみましょう.

# rpm -ivh te_ptex-3.0-58_60.i586.delta.rpm
エラー: te_ptex-3.0-58_60.i586.delta.rpm is a deltarpm, create a real rpm from
it first!

deltarpmのインストール方法を調べてもよく分からないので,
実態が必要なのか?と考えて,
te_ptex-3.0-58_60.i586.delta.rpmとその依存関係にあるパッケージをダウンロード.
その中にsrc.rpmがあったので,

# rpmbuild --rebuild latex-ucs-20041017.src.rpm
/usr/src/packages/RPMS/noarch/以下に
latex-ucs-20041017-31.noarch.rpm
latex-ucs-debuginfo-20041017-31.noarch.rpm
latex-ucs-debugsource-20041017-31.noarch.rpm


そしてまとめてインストール.

# rpm -ivh te_latex-3.0-60.i586.rpm te_ptex-3.0-60.i586.rpm tetex-3.0-60.i586.rpm latex-ucs-20041017-31.noarch.rpm latex-ucs-debuginfo-20041017-31.noarch.rpm latex-ucs-debugsource-20041017-31.noarch.rpm

インストール時にtexliveと競合するというエラーがたくさん出てきたので
yastでtexliveとtexlive-binをアンインストールして再度実行.

/*rpm
エラー: stat /var/lib/gdm/.gvfs に失敗しました: 許可がありません
 (snip)

こんなエラーが出てきましたが,何の影響があるんでしょう.
インストール自体は最後までいきました.
そもそもこれらのパッケージがopenSuSE11で動作確認されているものではないのかも...



この後deltarpmをインストールしようとするも,同じエラーを吐き,インストールできず.
この状態で/usr/share/texmf以下をfind . -name goth10してみたが見つかりません.
とりあえずlatex関連はインストールされているはずなので,platexしてみると,今度は

! LaTex Error: File `jsize10.clo' not found.

となり,やはりコンパイルできない.goth10以前のエラーなのでしょうか.


そもそもrpmパッケージからインストールせずにファイルを取り出すことができるのか?
と調べると,
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/522rpmcpio.html
にrpm2cpioとcpioというコマンドがあることが発覚.

# rpm2cpio latex-ucs-20041017-31.src.rpm | cpio --list

とすると,文字化けしたものが高速で端末を流れました.
これはバイナリ?
とにかく正常にファイルのリストを取得できていないみたいです.


元の状態に戻せるのか心配になって,一旦削除してみる.

# rpm -e te_latex-3.0-60.i586.rpm te_ptex-3.0-60.i586.rpm tetex-3.0-60.i586.rpm latex-ucs-20041017-31.noarch.rpm latex-ucs-debuginfo-20041017-31.noarch.rpm latex-ucs-debugsource-20041017-31.noarch.rpm
エラー: パッケージ te_latex-3.0-60.i586.rpm はインストールされていません.
エラー: パッケージ te_ptex-3.0-60.i586.rpm はインストールされていません.
エラー: パッケージ tetex-3.0-60.i586.rpm はインストールされていません.
エラー: パッケージ
/usr/src/packages/RPMS/noarch/latex-ucs-20041017-31.noarch.rpm
はインストールされていません.
エラー: パッケージ
/usr/src/packages/RPMS/noarch/latex-ucs-debuginfo-20041017-31.noarch.rpm
はインストールされていません.

とエラーが出力.できない...と思ったらパッケージ名だけでよいのでした.

# rpm -e te_latex te_ptex tetex latex-ucs-20041017-31.noarch
latex-ucs-debuginfo-20041017-31.noarch latex-ucs-debugsource-20041017-31.noarch

OK.


もう一回http://made-in-tomo.jugem.jp/?eid=121のものをインストール.
platexして元に戻ったか試してみると...

  (snip)
(./references.tex) [2] (./main.aux) )
(\end occurred inside a group at level 1)
Output written on main.dvi (2 pages, 14212 bytes).
Transcript written on main.log.
dvipdfmx main
main.dvi -> main.pdf
[1][2]
60007 bytes written

あ...れ?