我今天早上(2020-02-25 - 8.40 CET)更新了 texlive,昨天编译没有问题的文件今天报告了此错误:
/usr/local/texlive/2019/texmf-dist/tex/latex/base/fontenc.sty:115: Undefined co
ntrol sequence.
l.115 \xdef\@fontenc@load@list{\@fontenc@load@list
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
它可能与 siunitx 包(也许是命令\micro
)、xelatex、fontenc、inputenc 相关。
目前,我还没有 MWE - 希望有人可以在没有 MWE 的情况下提供帮助。如果没有,我明天会用 MWE 进行编辑。
答案1
fmtutil-sys
(自去年重组以来)texlive-scripts
是
tlmgr install texlive-scripts
应该使其可用,然后可以用来从更新的源重建格式。
答案2
编辑1
感谢@David Carlisle 和@Ulrike Fischer 的(同时)帖子,命令tlmgr install texlive-scripts
填充了usr/local/texlive/2019/texmf-dist/scripts/texlive
相关脚本,现在看起来像这样:
drwxr-xr-x 22 root staff 704 25 Feb 19:15 .
drwxr-xr-x 155 root staff 4960 28 Jan 00:02 ..
-rw-r--r-- 1 root staff 13587 27 Jan 23:11 NEWS
-rw-r--r-- 1 root wheel 2143 27 Jan 23:11 README
-rwxr-xr-x 1 root wheel 929 20 Apr 2015 fmtutil-sys.sh
-rwxr-xr-x 1 root wheel 926 19 Aug 2019 fmtutil-user.sh
-rwxr-xr-x 1 root wheel 50589 7 Jan 00:55 fmtutil.pl
drwxr-xr-x 2 root wheel 64 17 Dec 09:05 lua
-rwxr-xr-x 1 root staff 8209 29 Dec 20:18 mktexlsr
-rwxr-xr-x 1 root wheel 16696 30 Jul 2015 mktexlsr.pl
-rwxr-xr-x 1 root wheel 4007 29 Dec 20:18 mktexmf
-rwxr-xr-x 1 root wheel 9895 30 Jan 23:18 mktexpk
-rwxr-xr-x 1 root wheel 5913 30 Jan 23:18 mktextfm
-rwxr-xr-x 1 root wheel 901 25 Apr 2013 rungs.tlu
-rw-r--r-- 1 root staff 177 4 Jul 2019 tl-errmess.vbs
-rwxr-xr-x 1 root staff 339072 27 Jan 19:20 tlmgr.pl
-rwxr-xr-x 1 root staff 91549 11 Mar 2019 tlmgrgui.pl
-rwxr-xr-x 1 root staff 2272 10 Dec 07:20 uninstall-win32.pl
-rw-r--r-- 1 root staff 408 13 Mar 2019 uninstq.vbs
-rwxr-xr-x 1 root wheel 925 20 Apr 2015 updmap-sys.sh
-rwxr-xr-x 1 root wheel 922 19 Aug 2019 updmap-user.sh
-rwxr-xr-x 1 root wheel 87469 7 Jun 2019 updmap.pl
结束编辑1
到目前为止,我已经根据@Ulrike Fischer 的评论中的出色建议修复了原始问题:
我发现该目录usr/local/texlive/2019/texmf-dist/scripts/texlive
不再包含文件 shell 脚本fmtutil-sys.sh
、perl 脚本fmtutil.pl
和mktexlsr.pl
。我从 2017 发行版中复制了这三个文件,执行后fmtutil-sys -all
得到了以下最终结果:
Transcript written on utf8mex.log.
fmtutil [INFO]: /usr/local/texlive/2019/texmf-var/web2c/pdftex/utf8mex.fmt installed.
fmtutil [ERROR]: running `mf-nowin -ini -jobname=mf -progname=mf -translate-file=cp227.tcx mf.ini </dev/null' return status 1
fmtutil [ERROR]: return error due to options --strict
fmtutil [INFO]: Disabled formats: 5
fmtutil [INFO]: Successfully rebuilt formats: 38
fmtutil [INFO]: Failed to build: 1 (mf-nowin/mf)
fmtutil [INFO]: Total formats: 44
fmtutil [INFO]: exiting with status 1
由于我的文档再次编译,我上面的原始问题至少得到了解决方法。因此,我敢于将此作为答案发布,希望它对其他人有用。即使它并不完美。
在此期间,我还尝试从 GUI(在菜单“操作”中)“重新安装 Tex Live Manager”,但没有帮助。
请注意,与 2017 年安装相比,我的 2019 年安装中缺少多个其他脚本 - 对于其他人来说,这些脚本可能会或可能不会起作用。
以下是 2017 年发行版中 texlive 目录中的 ls -la:
drwxr-xr-x 34 root staff 1088 24 Maj 2017 .
drwxr-xr-x 136 root staff 4352 24 Maj 2017 ..
-rw-r--r-- 1 root staff 7140 19 Maj 2017 NEWS
-rwxr-xr-x 1 root wheel 3482 25 Nov 2016 allcm.sh
-rwxr-xr-x 1 root wheel 903 25 Nov 2016 allneeded.sh
-rwxr-xr-x 1 root wheel 1098 25 Nov 2016 dvi2fax.sh
-rwxr-xr-x 1 root wheel 3081 25 Nov 2016 dvired.sh
-rwxr-xr-x 1 root wheel 2728 25 Nov 2016 e2pall.pl
-rwxr-xr-x 1 root wheel 929 25 Nov 2016 fmtutil-sys.sh
-rwxr-xr-x 1 root wheel 876 21 Apr 2017 fmtutil-user.sh
-rwxr-xr-x 1 root wheel 48066 4 Maj 2017 fmtutil.pl
-rwxr-xr-x 1 root wheel 552 25 Nov 2016 fontinst.sh
-rwxr-xr-x 1 root wheel 3457 25 Nov 2016 kpsetool.sh
-rwxr-xr-x 1 root wheel 1441 25 Nov 2016 kpsewhere.sh
drwxr-xr-x 3 root wheel 96 24 Maj 2017 lua
-rwxr-xr-x 1 root wheel 16696 25 Nov 2016 mktexlsr.pl
-rwxr-xr-x 1 root wheel 229 25 Nov 2016 ps2frag.sh
-rwxr-xr-x 1 root wheel 1446 25 Nov 2016 pslatex.sh
-rwxr-xr-x 1 root wheel 2583 25 Nov 2016 rubibtex.sh
-rwxr-xr-x 1 root wheel 1791 25 Nov 2016 rumakeindex.sh
-rwxr-xr-x 1 root wheel 901 25 Nov 2016 rungs.tlu
-rwxr-xr-x 1 root wheel 1121 25 Nov 2016 test-tlpdb.tlu
-rwxr-xr-x 1 root wheel 20865 25 Nov 2016 texconf.tlu
-rwxr-xr-x 1 root wheel 13262 25 Nov 2016 texconfig-dialog.sh
-rwxr-xr-x 1 root wheel 1038 25 Nov 2016 texconfig-sys.sh
-rwxr-xr-x 1 root wheel 43330 24 Apr 2017 texconfig.sh
-rwxr-xr-x 1 root wheel 10274 25 Nov 2016 texlinks.sh
-rwxr-xr-x 1 root staff 299941 19 Maj 2017 tlmgr.pl
-rwxr-xr-x 1 root staff 91501 17 Maj 2017 tlmgrgui.pl
-rwxr-xr-x 1 root staff 2907 25 Nov 2016 uninstall-win32.pl
-rwxr-xr-x 1 root wheel 925 25 Nov 2016 updmap-sys.sh
-rwxr-xr-x 1 root wheel 873 21 Apr 2017 updmap-user.sh
-rwxr-xr-x 1 root wheel 86718 14 Maj 2017 updmap.pl
drwxr-xr-x 3 root staff 96 24 Maj 2017 var
以及来自 2019 年发行版的一个(在我复制了上述三个文件之后):
drwxr-xr-x 14 root staff 448 25 Feb 18:20 .
drwxr-xr-x 155 root staff 4960 28 Jan 00:02 ..
-rw-r--r-- 1 root staff 13587 27 Jan 23:11 NEWS
-rw-r--r-- 1 root staff 1603 29 Dec 20:18 README
-rwxr-xr-x 1 aknott staff 929 25 Nov 2016 fmtutil-sys.sh
-rwxr-xr-x 1 aknott staff 48066 4 Maj 2017 fmtutil.pl
drwxr-xr-x 2 root wheel 64 17 Dec 09:05 lua
-rwxr-xr-x 1 root staff 8209 29 Dec 20:18 mktexlsr
-rwxr-xr-x 1 aknott staff 16696 25 Nov 2016 mktexlsr.pl
-rw-r--r-- 1 root staff 177 4 Jul 2019 tl-errmess.vbs
-rwxr-xr-x 1 root staff 339072 27 Jan 19:20 tlmgr.pl
-rwxr-xr-x 1 root staff 91549 11 Mar 2019 tlmgrgui.pl
-rwxr-xr-x 1 root staff 2272 10 Dec 07:20 uninstall-win32.pl
-rw-r--r-- 1 root staff 408 13 Mar 2019 uninstq.vbs
答案3
我遇到了同样的问题,怀疑是因为我手动在 latex 系统上安装了一些字体。之前的所有答案都对我不起作用,最后我设法通过删除 ~/.texlive2019 文件夹然后运行来修复它
sudo mktexlsr
updmap-sys --enable Map pfr.map
updmap-sys --enable Map sitdings.map
编辑:我刚刚看到@UlrikeFischers 在 OP 的问题下的评论。她说,格式~/.texlive2019/...
覆盖了我的系统格式,删除它可以解决问题。