texlive 2017 on High Sierra + cjk-gs-support + jfontmaps でも dvipdfmx が異常終了

texlive 2017 on High Sierra + cjk-gs-support + jfontmaps でも dvipdfmx が異常終了

- 柏崎 礼生 の投稿
返信数: 5
当方の環境は macOS High Sierra で、install-tl からインストールした texlive 2017 を動かしており、
https://okumuralab.org/tex/mod/forum/discuss.php?d=2267
に従って cjk-gs-support と jfontmaps の High Sierra 対応をしたところなのですが、いまだに

% dvipdfmx test
test -> test.pdf
[1
kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 0+555/600 --dpi 555 uprml-h
mktexpk: don't know how to create bitmap font for uprml-h.
mktexpk: perhaps uprml-h is missing from the map file.
kpathsea: Appending font creation commands to missfont.log.

dvipdfmx:warning: Could not locate a virtual/physical font for TFM "uprml-h".
dvipdfmx:warning: >> There are no valid font mapping entry for this font.
dvipdfmx:warning: >> Font file name "uprml-h" was assumed but failed to locate that font.
dvipdfmx:fatal: Cannot proceed without .vf or "physical" font for PDF output...

Output file removed.

のエラーが出てしまいまして、なんでじゃろと色々調べていたのですが、まずもってこういう状況であると。

% kpsewhich kanjix.map
/usr/local/texlive/2017/texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map
% grep uprml /usr/local/texlive/2017/texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map
%

kanjix.map に uprml-h に関する記述がありません。まずこれはそういうものなのかどうかをお尋ねしたいのが一点。

次に jfontmaps ですが、make install した時のインストール先は、当方の texmf.cnf が

% cat /usr/local/texlive/2017/texmf.cnf
% (Public domain.)
% This texmf.cnf file should contain only your personal changes from the
% original texmf.cnf (for example, as chosen in the installer).
%
% That is, if you need to make changes to texmf.cnf, put your custom
% settings in this file, which is .../texlive/YYYY/texmf.cnf, rather than
% the distributed file (which is .../texlive/YYYY/texmf-dist/web2c/texmf.cnf).
% And include *only* your changed values, not a copy of the whole thing!
%
TEXMFHOME = ~/Library/texmf
TEXMFVAR = ~/Library/texlive/2017/texmf-var
TEXMFCONFIG = ~/Library/texlive/2017/texmf-config

というものであるからか、~/Library/texmf 以下にインストールされます。
一方で mktexlsr は

% sudo mktexlsr
mktexlsr: Updating /usr/local/texlive/2017/texmf-config/ls-R...
mktexlsr: Updating /usr/local/texlive/2017/texmf-dist/ls-R...
mktexlsr: Updating /usr/local/texlive/2017/texmf-var/ls-R...
mktexlsr: Updating /usr/local/texlive/texmf-local/ls-R...
mktexlsr: Done.

と /usr/local/texlive 以下に対して行われているため、jfontmaps のインストール結果が反映されていないのが dvipdfmx の異常終了の原因かしらとも思っています。この場合、
  • mktexlsr が走査するパスを増やすのが正しい。
  • texmf.cnf で定義される環境変数 TEXMF* を /usr/local/texlive/texmf-local 以下などにするのが正しい。
  • その他
のどれでしょうか。
柏崎 礼生 への返信

Re: texlive 2017 on High Sierra + cjk-gs-support + jfontmaps でも dvipdfmx が異常終了

- 前田 一貴 の投稿
私は Mac ではないのでよくわかりませんが,Linux の TeX Live 2017 で,
前半については

$ kpsewhich kanjix.map
/usr/local/texlive/2017/texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map
$ grep uprml `kpsewhich kanjix.map`
uprml-h UniJIS-UTF16-H ipaexm.ttf %!PS IPAexMincho
uprml-hq UniJIS-UCS2-H ipaexm.ttf %!PS IPAexMincho
uprml-v UniJIS-UTF16-V ipaexm.ttf %!PS IPAexMincho

となっています.
後半については,TEXMFHOME などは個人の設定ファイルを置く場所を
指していると思うので,そんな感じでよいのではと思います.
私の場合:

$ kpsewhich -var-value=TEXMFHOME
/home/kmaeda/texmf
$ kpsewhich -var-value=TEXMFVAR
/home/kmaeda/.texlive2017/texmf-var
$ kpsewhich -var-value=TEXMFCONFIG
/home/kmaeda/.texlive2017/texmf-config
$ sudo mktexlsr
mktexlsr: Updating /usr/local/texlive/2017/texmf-config/ls-R...
mktexlsr: Updating /usr/local/texlive/2017/texmf-dist/ls-R...
mktexlsr: Updating /usr/local/texlive/2017/texmf-var/ls-R...
mktexlsr: Updating /usr/local/texlive/texmf-local/ls-R...
mktexlsr: Done.

というわけで,kanjix.map がおかしい? Mac の人の情報も欲しいところです.
前田 一貴 への返信

Re: texlive 2017 on High Sierra + cjk-gs-support + jfontmaps でも dvipdfmx が異常終了

- gyaman の投稿
私は Mac ですが、議論にはまるでついていけません。

El Capitan (10.11.6)
$ homebrew cask install mactex
でインストールした TeX Live 2017 です。

$ cat test.tex
\documentclass[11pt,uplatex]{jsarticle}
\begin{document}
%hoge
ほげ
\end{document}

$ uplatex test
This is e-upTeX, Version 3.14159265-p3.7.1-u1.22-161114-2.6 (utf8.uptex) (TeX Live 2017) (preloaded format=uplatex)
restricted \write18 enabled.
entering extended mode
(./test.tex
pLaTeX2e <2017/10/28u01> (based on LaTeX2e <2017-04-15>)
Babel <3.14> and hyphenation patterns for 84 language(s) loaded.
(/usr/local/texlive/2017/texmf-dist/tex/platex/jsclasses/jsarticle.cls
Document Class: jsarticle 2017/10/04 jsclasses (okumura, texjporg)
(/usr/local/texlive/2017/texmf-dist/tex/platex/jsclasses/jslogo.sty))
No file test.aux.
[1] (./test.aux) )
Output written on test.dvi (1 page, 268 bytes).
Transcript written on test.log.

$ dvipdfmx test
test -> test.pdf
[1]
3978 bytes written

$ kpsewhich kanjix.map
/usr/local/texlive/2017/texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map

$ grep uprml `kpsewhich kanjix.map`
uprml-h UniJIS-UTF16-H ipaexm.ttf %!PS IPAexMincho
uprml-hq UniJIS-UCS2-H ipaexm.ttf %!PS IPAexMincho
uprml-v UniJIS-UTF16-V ipaexm.ttf %!PS IPAexMincho


$ kpsewhich -var-value=TEXMFHOME
/Users/hoge/Library/texmf

$ kpsewhich -var-value=TEXMFVAR
/Users/hoge/Library/texlive/2017/texmf-var

$ kpsewhich -var-value=TEXMFCONFIG
/Users/hoge/Library/texlive/2017/texmf-config

$ sudo mktexlsr
mktexlsr: Updating /usr/local/texlive/2017/texmf-config/ls-R...
mktexlsr: Updating /usr/local/texlive/2017/texmf-dist/ls-R...
mktexlsr: Updating /usr/local/texlive/2017/texmf-var/ls-R...
mktexlsr: Updating /usr/local/texlive/texmf-local/ls-R...
mktexlsr: Done.

私の環境ではこうなりました。
何かの参考になれば幸いです。

前田 一貴 への返信

Re: texlive 2017 on High Sierra + cjk-gs-support + jfontmaps でも dvipdfmx が異常終了

- aminophen の投稿
「Mac かどうか」というより「macOS High Sierra かどうか」の問題でしょうね。
現在 install-tl などの標準の方法で入る ptex-fontmaps や cjk-gs-integrate は
macOS Sierra までしかサポートしていないので,現在は High Sierra は非公式の方法を
使ってもらっているところですから。

> https://okumuralab.org/tex/mod/forum/discuss.php?d=2267
> に従って cjk-gs-support と jfontmaps の High Sierra 対応をしたところなのですが

とありますが,おそらく「その通りにしたつもりだけど,何か間違っていて,実は対応していない」
のだと思います。非公式の方法をデバッグするのは不毛なので,ヒラギノはあきらめて
ipaex フォント埋め込みにしていただくのが先決かと思います。
柏崎 礼生 への返信

Re: texlive 2017 on High Sierra + cjk-gs-support + jfontmaps でも dvipdfmx が異常終了

- Seki Motoki の投稿
https://okumuralab.org/tex/mod/forum/discuss.php?d=2267
で「非公式の」対応方法を記述した者です.
自分も現在ヒラギノフォント埋め込みに関して同様のエラーが出ているのですが,
時間がなく,解決方法やフォーラムでの通知を怠っていました.すみません.
自分は現在IPAexを埋め込んでいます.
時間ができたら解決方法を探ってみたいとは思いますが,
基本的には「公式の」サポートを待ち,それまではIPAexを埋め込むのが無難なように思います.
Seki Motoki への返信

Re: texlive 2017 on High Sierra + cjk-gs-support + jfontmaps でも dvipdfmx が異常終了

- aminophen の投稿
(非公式なので告知をするつもりすらありませんでしたが)
すみません,数日前に --fontdef-add に指定するファイル名を変えました。従来は
cjk-gs-integrate-highsierra.dat
だったのを
cjkgs-macos-highsierra.dat
に変えています。今後もファイル名や置き場所,オプションの与え方などは変えるかもしれません。

> 自分も現在ヒラギノフォント埋め込みに関して同様のエラーが出ているのですが,

とのことですが,一度成功したのであれば,その後一切いじらなければ壊れることはないはずです。