texlive 2023 で bxglyphwikiパッケージがエラー

texlive 2023 で bxglyphwikiパッケージがエラー

- Sakai Taka. の投稿
返信数: 9
texlive2022 を更新しようとしたところ 2023 への切替えるように出たのでインストールしたところ bxglyphwiki パッケージでエラーが出ます。

bxgw_u3bff.def とbxgw_u3bff.def はダウンロードされており、更に bxgw_u3bff_13.eps がダウンロードされています(要求した漢字コードは u3bff です)
2022で同じソースをコンパイルすると pdf ファイルとなっていて正常に動作します。
log ファイルの該当部分をみると

------------------------------------
(c:/texlive/2023/texmf-dist/tex/latex/lm/ot1lmtt.fd
File: ot1lmtt.fd 2015/05/01 v1.6.1 Font defs for Latin Modern
)
runsystem(bxglyphwiki +info . pdf dvipdfmx u3bff)...executed.

(./bxgw_resp_.def)
(./bxgw_u3bff.def)
Package bxglyphwiki Info: Using ver.13 for 'u3bff' (latest=13),
(bxglyphwiki)            with download, on input line 12.
runsystem(bxglyphwiki +get . pdf dvipdfmx u3bff 13)...executed.

(./bxgw_resp_.def)

! Package bxglyphwiki Error: Helper command failed for some reason.

See the bxglyphwiki package documentation for explanation.
Type  H <return>  for immediate help.
...                                             
                                                 
l.12 ...前第一部上」をみると\GWI{u3bff}
                                                とある。この\GWI{u3bff}
?
! Emergency stop.
...                                             

You're in trouble here.  Try typing  <return>  to proceed.
If that doesn't work, type  X <return>  to quit.
-----------------------------------
となっています。

コンパイルは秀丸、abenori さんの祝鳥マクロ上で行っていますがこちらのエラー出力を見ると

----------------------
(./bxgw_u3bff.def)bxglyphwiki: Try method 'wget'...(1)
bxglyphwiki: Method 'wget' is not available
bxglyphwiki: Try method 'curl'...(1)
bxglyphwiki: Try downloading...
bxglyphwiki: Data is successfully downloaded
epstopdf ($Id: epstopdf.pl 66407 2023-03-06 23:44:49Z karl $) 2.31
!!! Error: Input filename './bxgw_u3bff_13.eps' not allowed in restricted mode.
C:\texlive\2023\bin\windows\runscript.tlu:921: command failed with exit code 2:
perl.exe c:\texlive\2023\texmf-dist\scripts\epstopdf\epstopdf.pl --restricted ./bxgw_u3bff_13.eps
bxglyphwiki: EPS->PDF conversion failure: ./bxgw_u3bff_13.eps
(./bxgw_resp_.def)

! Package bxglyphwiki Error: Helper command failed for some reason.

See the bxglyphwiki package documentation for explanation.
Type  H <return>  for immediate help.
...                                             
                                                 
l.12 ...前第一部上」をみると\GWI{u3bff}
---------------------

という出力になっています。eps → pdf の部分で失敗しているようですが、これは 2023 に変わったせいでしょうか?
bxglyphwiki パッケージのインストールはうまくいっている筈ですが(以前に質問した時は肝心の mktexlsr を忘れるなんてドジを踏んでいますが・・・)
Sakai Taka. への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- 和田 勇 の投稿
あら? wget でエラーになってる ...
がその先の、同じ原因で困ってらっしゃる方の相談を受けて、
先ほど、 Error: Input filename を見つけ、どうしようか、
perlがファイルを書き込むのでそ対策を手当てしてあげれば良いのだろうと思って
色々やってるのですが、まだ解決に至らず、作者に連絡しようかな、とも思案中。

テスト用ファイルを添付しておきます。

%#! ptex2pdf -l -u -shell-esca[e
\RequirePackage{plautopatch}
\RequirePackage{exppl2e}
\documentclass[dvipdfmx,uplatex]{jlreq}
\usepackage{bxglyphwiki}
\begin{document}
\GWI{aj1-13725}
\end{document}
和田 勇 への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- 和田 勇 の投稿
二つ原因があるようです。
1)win32 のパスがハードコードされている
2)ghostscript が同梱されなくなったようだけど 2022 までの tlgs のパスがハードコードされている

上記は、エラーになった perl scriipt には --debug オプションがあり、それを使ったところ
以下のようなハードコードが表示されました。

   perl  c:\texlive\2023\texmf-dist\scripts\epstopdf\epstopdf.pl --debug --restrict bxgw_aj1-13783_8.eps
   * Restricted mode activated
   * Restricted Windows kpsewhich: c:\texlive\2023\texmf-dist\scripts\epstopdf/../../../bin/win32/kpsewhich
   * Restricted Windows gs: c:\texlive\2023\texmf-dist\scripts\epstopdf/../../../tlpkg/tlgs/bin/gswin64c
   * kpsewhich command: c:\texlive\2023\texmf-dist\scripts\epstopdf/../../../bin/win32/kpsewhich
   * Checking safe_name with: c:\texlive\2023\texmf-dist\scripts\epstopdf/../../../bin/win32/kpsewhich -progname repstopdf -safe-in-name bxgw_aj1-13783_8.eps
   * Checking safe_name with: c:\texlive\2023\texmf-dist\scripts\epstopdf/../../../bin/win32/kpsewhich -progname repstopdf -safe-out-name bxgw_aj1-13783_8.pdf
   * Ghostscript command: c:\texlive\2023\texmf-dist\scripts\epstopdf/../../../tlpkg/tlgs/bin/gswin64c

**試しに** 以下の作業を臨時に行なった。*** 注意!!注意*** 臨時の処理なので各自の判断で実施してください。

1)C:\texlive\2023\bin\win32 を作り、そこへ C:\texlive\2023\bin\windows のファイルをそっくりコピー。

2)gs の方は本家からインストーラを使って C:\Program File\gs にインストールしておきつつ、
  C:\texlive\2023\tlpkg\tlgs\bin も作成して 以下のように丸ごとコピー。

   cp 'C:\Program Files\gs\gs10.01.1\bin\*'  C:\texlive\2023\tlpkg\tlgs\bin\

これでエラーはなくなるのですが、どうやってレポートするのかどなたか教えてください。

PS エラーストップしなくなったけど、以下の警告は出るけど、これはまた後で調べます。

  *** Warning: GenericResourceDir doesn't point to a valid resource directory.
                the -sGenericResourceDir=... option can be used to set this.
和田 勇 への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- Sakai Taka. の投稿
ご面倒おかけして申し訳ありません。しかし・・・
実は意味がよくわかりません。
「ハードコード」とは? 何かのモジュールにwin32や
他のパスが書き込まれていて固定されているということですか?
もしそうだと手の打ちようがないということになりませんか?

厄介な問題を持ち込んでしまったようで申し訳ないです。
Sakai Taka. への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- 和田 勇 の投稿
まだ調査中ですが、以下の二行。

.texmf-dist\scripts\epstopdf\epstopdf.pl
504: $kpsewhich = "$mydirname/../../../bin/win32/$kpsewhich";
506: $GS = "$mydirname/../../../tlpkg/tlgs/bin/$GS";

また gs が 同梱されなくなったので 506 でインストールした GS を参照するようにしなければならないかもしれない。
和田 勇 への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- はやて (h20y6m) の投稿
> 1)win32 のパスがハードコードされている

修正されたようです。
https://www.tug.org/svn/texlive?view=revision&revision=66695

> 2)ghostscript が同梱されなくなったようだけど 2022 までの tlgs のパスがハードコードされている

TeX Live 2023 にも(Windows のみ)ghostscript (tlgs) は同梱されています。
もし C:\texlive\2023\tlpkg\tlgs\bin にないのであれば TeX Live のインストールに失敗している可能性があると思います。
はやて (h20y6m) への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- Sakai Taka. の投稿
和田さん、はやて (h20y6m) さん、有難うございました。

  1) アクセスしてダウンロード後、上書き。
  2) gs はありました。

これで解決しました。私は「ハードコード」の意味も分かりません
でしたがこういうことなのですね。勉強になりました。
Sakai Taka. への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- 和田 勇 の投稿
「ハードコード」は業界専門用語のようですね。
「埋め込まれたコード」でわかるでしょうか?
逆にソフトコードってのは目にしたことはないのですが、
ハードコードに対するものは、「設定ファイル」や「環境変数」で置き換える手法ですね。

まだ、私のところには update 版降りてこないな ...
&現在インストールしなおしてるけど tlgs がない :-( -no-gui オプションかな?
はやて (h20y6m) への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- 和田 勇 の投稿
はやてさん、フォローありがとうございます。

◆win32 のパスコードの埋め込み回避は、texlive のソースでは確認できたものの、
tlmgr update では、まだ私のところには更新版が降りて来ません :=( もうしばらく待ちます。

でも win32 を windows にしただけなので、少なくとももうしばらくは少数派の ARM チップは当面サポート外かな?
macOS のintelMac と M1-mac を包括サポートのようなことを考えているのであれば良いのだが、、、

◆gs は 2023 でもバンドルか?
再インストールしたところ tlgs ディレクトリが生成されることを確認しました。
=>2023 でも gs はバンドルされます。

思い返すと、20223を初めてインストールした時、
最近ほとんど発生しなくんなった「ダウンロード失敗によるリカバリ処理をせよ」の旨の
メッセージがあったので、指示通りリカバリ処理した記憶はあります。
そのインストールログも改めてチェックしましたが、tlgs の文字列はありませんでした。

原因を追求するのが良いのですが、所要時間はかなり要することやレアケースなので、こういったことがあるのだということにします。
和田 勇 への返信

Re: texlive 2023 で bxglyphwikiパッケージがエラー

- 和田 勇 の投稿
ようやく https://www.tug.org/svn/texlive?view=revision&revision=66695
が降りてきたので、--debug オプションで win32 が出力されないことを確認しました。


ついでなので他にないかなと調べたところ、実効コマンドのではないので
現状は問題はないのですが、日本で最近よく使われる ptex2pdf 関連で
改修した方が良い点だと思えるところですいがいかがでしょうか?

texmf-dist/doc/latex/ptex2pdf/README.md
    51-### Windows ###
    52-create a copy of runscript.exe as ptex2pdf.exe, in the TeX Live case:
    53-
    54:  `copy TLROOT/bin/win32/runscript.exe TLROOT/bin/win32/ptex2pdf.exe`
    55-

texmf-dist/scripts/ptex2pdf/ptex2pdf.lua
    67-### Windows ###
    68-create a copy of runscript.exe as ptex2pdf.exe, in the TeX Live case:
    69-
    70:  `copy TLROOT/bin/win32/runscript.exe TLROOT/bin/win32/ptex2pdf.exe`
    71-]]

なお、2023年 03月 28日(火曜日) 18:14で投稿した(*1) の最後に記述した以下の警告メッセージは
表示されなくなりました。

  *** Warning: GenericResourceDir doesn't point to a valid resource directory.
                the -sGenericResourceDir=... option can be used to set this.

(*1) https://okumuralab.org/tex/mod/forum/discuss.php?d=3562&parent=22057