LaTeX 错误:未找到文件“subfiles.sty”

LaTeX 错误:未找到文件“subfiles.sty”

我正在用它pdflatex来编译我的.tex文件,对此我还很陌生。

我有这个使用子文件的包,但由于这个错误我无法编译:

LaTeX Error: File `subfiles.sty' not found.

我已经安装了texlive-full所有我认为可以解决问题的其他软件包,但我运行了它们texhash,但没有效果。

我该如何解决这个错误?包文件在哪里?我可以subfiles.sty直接在那里下载吗?

答案1

首先,了解如何安装 TexLive 非常重要:

  • 作为来自你的 Linux 发行版的一个包。
    • 什么分布?
    • TexLive 是哪个版本的?
  • 直接来自特克斯直播

我安装的TexLive是第二个,TexLive 2012,文件subfiles.sty位于:

$TEXLIVE_HOME/texmf-dist/tex/latex/subfiles/subfiles.sty

因此,如果你从发行版安装,则有两个选择:

  • 如果使用 Debian(或基于 Debian 的发行版),请texlive-latex-extra按照@egreg 指出的方式进行安装。
  • 如果使用其他发行版,请尝试使用相应的包管理器搜索良好的匹配。
  • 如果您希望拥有更新的 LaTeX 发行版,请考虑从上面的链接安装 TexLive2012。

更新 1

由于您使用的是 Linux Mint,所以这个问题非常奇怪,因为如果您在终端中执行:

apt-cache show texlive-latex-extra

您可以subfile在列表中找到该包。

更新2

根据软件包信息网,的位置subfiles.sty应该是这样的:

/usr/share/texlive/texmf-dist/tex/latex/subfiles/subfiles.cls

这不是您想要的解决方案,但我的谦虚建议:

我在家里使用 Linux Mint Debian 版本(在工作中使用 Debian),但在两个系统上我都在自定义目录中手动安装了 TexLive2012,所以我无法告诉您发行版软件包发生了什么。

你没有想过直接用以下方法安装 TexLive 吗install-tl?:

我希望这能有所帮助。

答案2

首先检查你的文件是否安装

locate subfiles.sty

(或者find | grep subfiles.sty从您的 TeX 目录)。

如果不存在,请安装该软件包(通过tlmgr或系统的安装程序)。如果存在,则问题是LaTeX找不到它。

路径搜索LaTeX帕西阿。可以将路径添加到搜索路径:

export TEXINPUTS=.:/opt/tex/cur//

,其中两个斜线表示子目录扩展

另一个选择是创建一个文件名数据库

texhash /opt/tex/cur

(或mktexlsr取决于您的系统)。然后将该路径添加到您的TEXMFDBS变量中:

export TEXMFDBS=/opt/tex/cur

请注意,数据库搜索比路径扩展快得多:

$ /bin/time kpsewhich standalone.cls
...
0.42user 0.05system 0:00.48elapsed 99%CPU 

$ export TEXMFDBS=/opt/tex/cur
$ /bin/time kpsewhich standalone.cls
...
0.05user 0.00system 0:00.06elapsed 98%CPU

答案3

我修复了它

sudo tlmgr install subfiles

相关内容