環境:TeXLive2022(+TLW64)、Windows 10 pro(21H2)
tlmgr update --self --all
でアップデート後、コンパイルできなくなりました。
アップデート後、tl-win64.zipを改めてダウンロード、展開・配置し直して
fmtutil-sys --all
luaotfload-tool --force --update -vvv
は実行しております。
以下のようなエラーが出ます(logファイルを添付しました)。
----------------------------
$ lualatex テスト
This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)
(c:/texlive/2022/texmf-dist/tex/latex/xkeyval/xkeyval.sty
(c:/texlive/2022/texmf-dist/tex/generic/xkeyval/xkeyval.tex
(c:/texlive/2022/texmf-dist/tex/generic/xkeyval/xkvutils.tex
(c:/texlive/2022/texmf-dist/tex/generic/xkeyval/keyval.tex))))
(c:/texlive/2022/texmf-dist/tex/latex/etoolbox/etoolbox.sty)
(c:/texlive/2022/texmf-dist/tex/latex/everyhook/everyhook.sty
(c:/texlive/2022/texmf-dist/tex/latex/svn-prov/svn-prov.sty))
(c:/texlive/2022/texmf-dist/tex/luatex/luatexja/ltj-base.sty)
(c:/texlive/2022/texmf-dist/tex/luatex/luatexja/ltj-latex.sty
(c:/texlive/2022/texmf-dist/tex/luatex/luatexja/patches/lltjfont.sty
(c:/texlive/2022/texmf-dist/tex/latex/base/tuenc.def
! Undefined control sequence.
l.77 \newprotectedluacmd
\@remove@tlig@@@
?
! Emergency stop.
l.77
-------------------------------
32bitでもコンパイルしてみましたが、以下のようなエラーが出てコンパイルできません。
-------------------------------
$ lualatex テスト
This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)
restricted system commands enabled.
(./テスト.tex
LaTeX2e <2021-11-15> patch level 1
L3 programming layer <2022-04-29>c:/texlive/2022/texmf-dist/tex/latex/l3kernel
/expl3.lua:282: bad bytecode register
stack traceback:
[C]: in function 'lua.getbytecode'
c:/texlive/2022/texmf-dist/tex/latex/l3kernel/expl3.lua:282: in main chunk
[C]: in function 'require'
[\directlua]:1: in main chunk.
\lua_now:e #1->\__lua_now:n {#1}
l.1
\documentclass{ltjsarticle}
?
! Emergency stop.
\lua_now:e #1->\__lua_now:n {#1}
l.1
\documentclass{ltjsarticle}
301 words of node memory still in use:
1 hlist, 1 dir, 3 kern, 1 glyph, 1 attribute, 39 glue_spec, 1 attribute_list
nodes
avail lists: 2:10,3:1,4:1
! ==> Fatal error occurred, no output PDF file produced!
Transcript written on テスト.log.
--------------------------------
コンパイルしようとしているTeXファイルは以下の内容です。試しにCloud LaTeXにアップロードしてコンパイルしましたが、問題なくコンパイルできました。
------------------------------
\documentclass{ltjsarticle}
\usepackage{luatexja}
\title{論文タイトル}
\author{著者}
\date{}
\begin{document}
\maketitle% タイトル・著者名の出力。(段組みなしのとき)
\begin{abstract}% 論文要旨(アブストラクト)
概要を書く。
\end{abstract}
%\maketitle% タイトル・著者名の出力。twocolumn(2段組のとき)
\section{見出し}
文章を書く。
\end{document}
-------------------------------
どのように対処すればよいでしょうか?
よろしくお願いいたします。
TeX Liveを更新して試してみましたがエラーは
ログを見るとフォーマットの日付が (format=lualatex 2022.7.7)
になっています。
またLaTeX2eカーネルとexpl3のバージョンが
LaTeX2e <2021-11-15> patch level 1
L3 programming layer <2022-04-29>
となっていて5月ごろのバージョンのように見えます。
一方で
Lua module: luaotfload 2022-10-03 3.23 Lua based OpenType font support
Lua module: lualibs 2022-10-04 2.75 ConTeXt Lua standard libraries.
Lua module: lualibs-extended 2022-10-04 2.75 ConTeXt Lua libraries -- extended c
とLua関係のファイルは新しいものが入っているようです。
カーネルだけが古いという妙な状態にっているようです。
考えられることとしては
1) 古いフォーマットがfmtutil-sysで作成される場所とは違うところに存在する
kpsewhich -engine=luahbtex -progname=lualatex -all lualatex.fmt
で2つ以上出てくるようであれば古いものを削除してみてください。 (あるいは全部削除してfmtutil-sysをやり直す)
2) 古いバージョンのLaTeX2eカーネルやexpl3が他の場所にインストールされている
kpsewhich -engine=luahbtex -progname=lualatex -all latex.ltx
kpsewhich -engine=luahbtex -progname=lualatex -all expl3.sty
latex.ltxはlatexとlatex-devの2つあります。expl3.styは1つだけのはずです。
3) フォーマットの作成に失敗していてフォーマットが古いのままになっている
fmtutil-sysを実行したときにエラーが出ていないかを確認してみてください。
はやて様
ご提示していただいた、1)の方法
> 1) 古いフォーマットがfmtutil-sysで作成される場所とは違うところに存在する
> kpsewhich -engine=luahbtex -progname=lualatex -all lualatex.fmt
> で2つ以上出てくるようであれば古いものを削除してみてください。 (あるいは全部削除してfmtutil-sysをやり直す)
で問題解決いたしました。
kpsewhich -engine=luahbtex -progname=lualatex -all lualatex.fmt
をしたところ、
lualatex.fmt が
C:\texlive\2022\texmf-var\web2c\luahbtex
の他に
C:\Users\hogehoge\.texlive2022\texmf-var\web2c\luahbtex
の中にも入っていました。
両方を削除してから、管理者権限で
fmtutil-sys --all
をやったところ、無事コンパイルできました。
ありがとうございました!
ご提示していただいた、1)の方法
> 1) 古いフォーマットがfmtutil-sysで作成される場所とは違うところに存在する
> kpsewhich -engine=luahbtex -progname=lualatex -all lualatex.fmt
> で2つ以上出てくるようであれば古いものを削除してみてください。 (あるいは全部削除してfmtutil-sysをやり直す)
で問題解決いたしました。
kpsewhich -engine=luahbtex -progname=lualatex -all lualatex.fmt
をしたところ、
lualatex.fmt が
C:\texlive\2022\texmf-var\web2c\luahbtex
の他に
C:\Users\hogehoge\.texlive2022\texmf-var\web2c\luahbtex
の中にも入っていました。
両方を削除してから、管理者権限で
fmtutil-sys --all
をやったところ、無事コンパイルできました。
ありがとうございました!