![无法在 Mac OS High Sierra 上使用 XeLaTeX 进行编译](https://linux22.com/image/371318/%E6%97%A0%E6%B3%95%E5%9C%A8%20Mac%20OS%20High%20Sierra%20%E4%B8%8A%E4%BD%BF%E7%94%A8%20XeLaTeX%20%E8%BF%9B%E8%A1%8C%E7%BC%96%E8%AF%91.png)
我已经安装了 MacTex 2017,但无法使用 XeTex(或 LuaLatex)编译任何东西。例如这个最小示例:
\listfiles\documentclass{article}\usepackage{fontspec}\begin{document}\end{document}
失败并显示以下输出:
This is XeTeX, Version 3.14159265-2.6-0.99998 (TeX Live 2017) (preloaded format=xelatex)
restricted \write18 enabled.
entering extended mode
(./minimal.tex
LaTeX2e <2017-04-15>
Babel <3.18> and hyphenation patterns for 84 language(s) loaded.
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/size10.clo))
(/usr/local/texlive/2017/texmf-dist/tex/latex/fontspec/fontspec.sty
(/Users/ben/Library/texmf/tex/latex/l3packages/xparse/xparse.sty
(/Users/ben/Library/texmf/tex/latex/l3kernel/expl3.sty
(/Users/ben/Library/texmf/tex/latex/l3kernel/expl3-code.tex)
(/Users/ben/Library/texmf/tex/latex/l3kernel/l3unicode-data.def)
(/Users/ben/Library/texmf/tex/latex/l3kernel/l3xdvipdfmx.def)))
! Undefined control sequence.
l.26 \sys_if_engine_luatex:T
无论我直接使用 latexmk 还是 xelatex 命令,输出基本相同。我尝试重新安装 MacTex,并重新安装 fontspec 包(基于类似问题的建议),但似乎没有任何效果。有人能建议哪里出了问题,或者如何进一步调试吗?
答案1
正如 Joseph Wright 所指出的,问题在于存在一个本地用户 texmf 目录,其中包含导致错误的旧包文件fontspec
。移动(或删除)~/Library/texmf
目录解决了该问题。