我的乳胶文件的第一行是:
\documentclass[english,draft]{ectaart}
latex 失败并出现以下错误:
LaTeX Error: File `ectaart.cls' not found.
我将该文件复制到(在我的 Ubuntu 系统上):
- 在 /usr/local/share/texmf 中
- 在 /usr/local/share/texmf/tex
- 在 /usr/local/share/texmf/tex/latex
- /usr/local/texlive/2012/texmf
- /usr/local/texlive/2012/texmf/tex
- /usr/local/texlive/2012/texmf/tex/latex
- /var/lib/texmf
- /var/lib/texmf/tex
- /var/lib/texmf/tex/latex
这些选择都不起作用。
该文件应存放到哪里?
(为什么 Latex 没有告诉我在哪里查找文件?)
答案1
TeX 的第一步是解析当前/工作文件夹中查找所需文件。这包括.tex
、.sty
、.cls
、图像文件和其他所有内容。如果失败,TeX 会搜索指数运行 时生成的texhash
。此索引以用作查找的基本“哈希表”形式包含 TeX 发行版的文件夹和文件位置。实际上,它只是按文件夹按字母顺序排列的文件列表。由于 TeX 可以安装在任何位置,因此需要这样一个可访问的表来识别源的位置。在 TeX Live 下,此文件(ls-R
,基于R
递归文件夹l
浏览s
) 位于您的*/texmf-dist
文件夹中,其格式如下:
...
./tex/latex/bhcexam:
BHCexam.cfg
BHCexam.cls
./tex/latex/bibarts:
bibarts.sty
./tex/latex/biblatex:
bbx
biblatex.cfg
biblatex.def
biblatex.sty
biblatex1.sty
biblatex2.sty
blx-compat.def
blx-dm.def
blx-mcite.def
blx-natbib.def
cbx
lbx
...
您可以看到它如何与文件夹结构匹配:
查找文件时,仅按顺序搜索上述两个位置。
请注意,即使你将源文件放在 TDS(TeX 分发结构)中,它也不会被自动拾取除非您运行的texhash
。ls-R
必须更新以包含您新放置的文件,否则将找不到这些文件。
答案2
经过几个小时的挫折,我终于决定将文件“ectaart.cls”放在我的 LaTeX 文件的同一文件夹中,并且成功了!我知道这不是执行此操作的标准方法,但我确实尝试了所有其他选项。