自从升级到pgf 3.0.0
和 后tikz-cd 0.9b
,我就无法加载 tikz-cd 包。问题似乎出在arrows.meta
tikz 库上。以下 MWE 抛出了 3 个错误和一个警告,也列在下面:
\documentclass{article}
\usepackage{tikz}
\usepackage{tikz-cd}
\begin{document}
Hello World!
\end{document}
文件中的错误.log
如下:
LaTeX Warning: You have requested, on input line 17, version
`2013/12/13' of package tikz,
but only version
`2010/10/13 v2.10 (rcs-revision 1.76)'
is available.
! Package pgfkeys Error: I do not know the key '/handlers/first char syntax' an
d I am going to ignore it. Perhaps you misspelled it.
See the pgfkeys package documentation for explanation.
Type H <return> for immediate help.
...
l.38 \pgfkeys{/handlers/first char syntax=true}
! I can't find file `tikzlibraryarrows.meta.code.tex'.
<argument> ...nput tikzlibrary\pgf@temp .code.tex
\catcode `\@ =\csname tikz...
l.18 \usetikzlibrary{matrix,quotes,arrows.meta}
Please type another input file name
! Emergency stop.
<argument> ...nput tikzlibrary\pgf@temp .code.tex
\catcode `\@ =\csname tikz...
l.18 \usetikzlibrary{matrix,quotes,arrows.meta}
从版本不匹配警告来看,我认为 MiKTeX 获取了一些未更新的 pgf 版本。如果这是问题所在,我该如何确认并解决这个问题?
答案1
似乎 MiKTeX 安装了两个不同版本的 pgf,一个通过包管理器,一个通过包管理器(管理员)。运行非管理员更新删除了一个副本(这个想法来自tikz 中的 arrows.meta),然后编译就成功了。如果有人知道为什么会发生这种情况的更多细节,欢迎您添加另一个答案。