ptexlive with e-pTeX on Snow Leopard

| コメント(4)

MacBook Pro を手に入れ,ptexlive, e-pTeX をインストールした。epTeX-100420 は ptexlive に対応するとともに,ptexlive の懸案であった Babel 対応を付加してくれた。インストールは基本的に添付の文書: ptexlive の README,e-pTeX の INSTALL.txt を参照すればよいけれども,Mac OS X 10.6.3 Snow Leopard にインストールするに当たって,私がハマった点を中心にメモしておく。

ptexlive の 大前提 TeX Live 2009-20091107 の xz アーカイブから iso イメージを取り出す方法は,ptexlive 開発者・土村さんが ptexlive Wiki において懇切丁寧に書いてくださっている。Mac OS X での iso イメージのマウントは hdiutil mount texlive2009-20091107.iso とすればよい。どのデバイスにどのようなパスでマウントされたかが返される。このパスの install-tl を管理者権限で実行して,TeX Live を導入する。このパスは,あとで ptexlive の導入設定 ptexlive.cfgISO_DIR 変数に指定しておく。

ptexlive Wiki から ptexlive-20100322.tar.gz を,e-pTeX Wiki から eptex-100420.tar.bz2ptex-qtrip-100402.11.tar.gz を,ダウンロードし,同じ作業ディレクトリに格納し,ptex-qtrip- 以外をその場所で展開する。

私の場合,ptexlive 前提の nkf や libpng・zlib ライブラリ等を MacPorts でインストールした。Ports ではヘッダ,ライブラリ等が /opt/local 配下にインストールされるので,ptexlive.cfg においてライブラリ,ヘッダの場所を,次のように追加しておく必要があった。

CPPFLAGS="-I/opt/local/include -I/usr/local/include"
LDFLAGS="-L/opt/local/lib -L/usr/local/lib"
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/opt/local/lib
export CPPFLAGS LDFLAGS LD_LIBRARY_PATH

いちばんハマったのが,autoconf,automake,m4 のバージョンである。それぞれ 2.63 以上,1.11 以上,1.4.4 以上であることを --version オプションで確認し,それ未満ならアップデートしておく。ここは普段軽く扱ってしまうところだけど,e-pTeX の開発者・北川さんがきちんと書いてくれているとおりにしないと,eptex のコンパイルがすっとばされてしまうので注意。

もうひとつ Snow Leopard への導入で大事なのは,プレインストールされている sed ではなく,GNU sed を追加インストールして,こちらを使うこと。そうでないと,e-pTeX の configure スクリプトのパッチがうまく当たらず,エラー終了してしまう。

これらの点で引っ掛かったけれども,そのあとは手順どおり以下を実行すれば完了した。

$ cd ptexlive-20100322
$ make stage2
$ cd ../eptex-100420
$ ./0eptex.sh
$ ./6babel.sh
$ cd ../ptexlive-20100322
$ make fonty test
$ sudo make install distclean
$ hdutil eject /dev/diskX 
→ TeX Live iso イメージのデマウント。X はマウント時に表示された番号。

このタイミングで実行パスを ptexlive, texlive のバイナリディレクトリに通しておく。

最後に ptexlive 旧版で構築したローカルツリー(texmf-local)のバックアップがあれば,これを新 ptexlive に展開し,そこにあるフォントマップを改めて登録しておく。

$ su -m
# cd /usr/local/texlive
# tar zxvf $where/texmf-local-back.tar.gz
# mktexlsr
# cd texmf-local/fonts/map/dvips
# for i in `find . -name "*.map" | xargs basename`
> do updmap-sys --nomkmap --enable Map=$i; done
# updmap-sys

最近の ptexlive では,texmf-local よりも配布ツリーが優先的に参照されるようになった。あるマクロの最新版を texmf-local ツリーに入れ,その旧版を配布ツリーに残したままにすると,予期しないトラブルに見舞われるので注意。

fmtutil-sys --byfmt eplatex などとして,UTF-8 ハイフネーションパターンもきちんとロードされるようになった(出力フォントが Unicode でもない TeX ハイフネーションパターンで UTF-8 にこだわるコントリビュータの考え方が,いまひとつ私には理解できていません。なんでもかんでも Unicode じゃないとダメという最近の風潮は Linux の悪い影響だと思う)。Babel ヘブライ語など,かつての ptexlive では処理できなかった右左書字方向言語も処理できるようになった。あとは upTeX が ptexlive に追従してくれるのを期待したい。

コメント(4)

こんにちは。同様にコンパイルしてみたのですが,OSX10.6.4で,./0eptex.shのところで止まってしまいます。

ptexlive-20100322/build/texlive-20091011-source/Work/texk/web2c'
Making all in doc

../../../../texk/web2c/config.h:32:29: error: kpathsea/config.h: No such file or directory

などと出ています。どうもptexlive-20100322/build/texlive-20091011-source/WorkのなかがMakefileしかないみたいです。
ghostscriptやsed, ed, gawk, gpatchなど,macportsから入れています。
なにかアドバイスあればお教えください。

エラーメッセージがないので判断が付きません。思い当たる節を書いておきます。

sed は GNU sed が入っていますか? m4, autoconf, automake は私が記したようなバージョンになっていますか? まずこれらをご確認ください。which sed などとして見ているプログラムのパスを確認し,絶対パスで --version オプションを指定してバージョン番号を確認してみてください。Mac OS のパス設定で古いプログラムが先きに動いてしまっている可能性がなきにしもあらずです。とくに macports で入れたプログラムは /opts/local/bin に入りますので,/opts/local/bin が /usr/bin, /usr/local/bin などよりも優先して観に行くように,.bash_profile のはじめのほうにパス情報を書いておかないといけません。

いろいろやってダメなら,LOG を添付して,私にメールしてもらってもかまいません。

こんばんは。やっとできました。
macportsから入れたautoconf2.67などがいけなかったようです(新しすぎる?)。autoconf, automake, sed, m4をホームディレクトリ以下に野良ビルドして,pathを通してから,x-pTeXをコンパイルするとうまくいきました。以下,手順です。お騒がせしてすみません。ありがとうございました。

OSX 10.6.4

~/binにgnu関係を野良ビルド:
autoconf-2.63
automake-1.11
m4-1.4.14
sed-4.2.1

macportsから:
ghostscript @8.71_5 (active)
ghostscript-fonts-hiragino @8.71_0+darwin_10 (active)
nkf @2.1.0_0 (active)
xz-devel @4.999.9beta_0 (active)

eptexとptexliveのバージョン:
eptex-100420-patch1.diff
eptex-100420.tar.bz2
ptex-qtrip-100710.tar.gz
ptexlive-20100711.tar.gz

ptexlive.cfgの中身:
TEXLIVE_VERSION=2009
ISO_DIR=/Volumes/TeXLive2009
TEXLIVE_DIR=/usr/local/texlive/2009
PREFIX=/usr/local/texlive/p2009
TMP_PREFIX=`pwd`/build
conf_option -C
make_option -j 3 # for 2 core
conf_option --without-x
conf_option --disable-xdvik
conf_option --disable-pxdvik
XDVI=echo

よかった,よかった。eplatex いいっすよー。

Moon Calendar

Profile

ISAO YASUDA。システムエンジニア。神奈川県在住。昭和 30 年代を懐かしむオヤジ。ロシアに興味があります。
[more], [About our site]

Notice

この文書はフィクションであり,実在する個人,団体等とは一切関係ありません。

R-18 指定サイトです。そのうち「18 歳以上ですか」の認証を入れる予定です。

文書の記述内容は無保証です。不適切な表現があればコメントにてご指摘ください。

コメント,トラックバックは,現在,運用を停止しています。ご意見等ありましたら isao@yasuda.homeip.net 宛電子メールにてお願いします。

Links

Entries

About this entry

Written by isao at 2010年5月 4日 04:53.

Previous: MacBook Pro

Next: 憲法記念日/ジュンク堂/Emacs-24

Recent Entries in Main Index.
All Entries in Archive Index.

March 2012

Sun Mon Tue Wed Thu Fri Sat
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Emacs: Monthly Archives

Powered by Movable Type 5.12 Powered by FreeBSD 8.2-RELEASE
blog counter