我刚刚更新了我的 TL2022 安装。它没有像我希望的那样顺利(我想是因为 tlmgr 在系统安装和我正在更新的安装之间混淆了)。现在expl3.sty
出现了问题,具体来说:
/usr/local/texlive/2022/texmf-dist/tex/latex/l3kernel/expl3.sty
! LaTeX3 Error: Mismatched LaTeX support files detected.
(LaTeX3) Loading 'expl3.sty' aborted!
(LaTeX3)
(LaTeX3) The L3 programming layer in the LaTeX format
(LaTeX3) is dated 2022-05-04, but in your TeX tree the files require
(LaTeX3) at least 2022-09-28.
For immediate help type H <return>.
...
l.77 \ExplLoaderFileDate{expl3.sty}}
现在,我怀疑应该不再加载任何东西了,expl3.sty
因为它是内核的一部分。但是,考虑到周围可能仍会明确加载它的软件包数量,那么以这种格式将其注册为已加载,那么其他任何东西都不会这样做吗?
不管怎样,到底发生了什么事?我该如何阻止它?
答案1
正如 Ulrike 在评论中暗示的那样,问题在于格式没有被正确编译 - 很可能是因为tlmgr
在更新期间混淆了不同的 TeXLive 安装并调用了错误版本的子程序。简单地重新运行tlmgr upgrade --all
并没有重新运行这些子程序,因为它认为不需要,所以我不得不手动运行fmtutil-sys --all
,这解决了问题。