![如何从 CTAN 获取 expl3?](https://linux22.com/image/248935/%E5%A6%82%E4%BD%95%E4%BB%8E%20CTAN%20%E8%8E%B7%E5%8F%96%20expl3%EF%BC%9F.png)
我真正的问题是,我正在尝试使用一个依赖于的包siunitx
,但它在编译时出现以下错误:
(/usr/share/texmf/tex/latex/siunitx/siunitx.sty
! Package siunitx Error: Support package expl3 too old..
See the siunitx package documentation for explanation.
Type H <return> for immediate help. ... l.29 }
)
我更愿意使用包管理器来安装包。我使用的是 Gentoo,它有一个很棒的小工具,叫做 g-ctan,它可以根据 CTAN 上的包创建发行版包。
expl3
不在包数据库中,尽管可以在 CTAN 上找到。
据说它是实验性 LaTeX 3 的包装器...包名称是l3kernel
。哎呀!实验性的!
安装它安全吗l3kernel
?它会破坏我的 LaTeX 安装吗?
答案1
与许多其他 Linux 发行版一样,Gentoo 可能使用较旧的 TeX Live 版本(我猜是 TL2009,但不确定)。因此,您需要从 CTAN 获取必要的支持文件并在本地安装它们。
LaTeX3 支持材料目前分为三个部分
您将需要l3kernel
和l3packages
来使用siunitx
。上面的链接指向可立即安装的 TDS 样式.zip
文件。下载这些文件,并将它们解压到您的本地 TeX 树(通常是~/texmf
)中,以创建结构。您不需要运行texhash
本地安装,除非 Gentoo 包含非常旧的 TeX Live 或您的~
文件夹不在“本地”PC 上。
在过去的几年中,代码的“实验性”性质已经得到了很多澄清。l3kernel
和l3packages
代码对于一般用途来说是稳定的,而l3experimental
可能更具可变性。然而,它们都不会对其他 LaTeX 材料产生任何影响(除非它使用 LaTeX3)。
答案2
如果你正在使用MiKTeX 2.9,请尝试更新它。在 Windows 上:
Start
> Miktex 2.9
> Maintenance (Admin )
>Update (Admin)
这帮我解决了问题。我花了几个小时在网上搜索后找到了这个建议。所以,我希望它能有所帮助。
答案3
在Windows
和 的情况下MikTeX
,可能有两种安装:一种在用户空间下,一种在所有用户下。
一个解决方案可能是用户删除所有内容
<<DRIVELETTER>>:\Users\<<USERNAME>>\AppData\Roaming\MiKTeX
然后尝试编译他们的 LaTeX 文件,该文件将要求重新安装所有必需的软件包。