我正在用它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
?:
- 下载安装-tl并将其解压。
- 按照以下说明操作TeX Live - 快速安装。
我希望这能有所帮助。
答案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