我在尝试安装便携式 TeX Live 时遇到了一些问题。一开始一切顺利,但我尝试tlmgr
添加一些包,现在每次运行时pdflatex
都会出现奇怪的错误。
谷歌并没有提供太多帮助——大多数讨论都是关于某些 Linux 发行版(我没有使用)的系统安装中的错误,或者他们建议我运行fmtutil --all
,虽然没有出现错误,但并没有解决问题。
我不确定下一步该尝试什么。当我运行 pdflatex 时,会发生以下情况:
$ ./bin/x86_64-linux/pdflatex
This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013)
restricted \write18 enabled.
**t
---! ./texmf-var/web2c/pdftex/pdflatex.fmt doesn't match pdftex.pool
(Fatal format file error; I'm stymied)
pdftex.pool
便携式安装或我的系统安装(确实有效)中没有文件。
知道问题是什么或我下一步可以尝试什么吗?
答案1
现代 pdftex 将“池文件”嵌入可执行文件中,因此此消息意味着格式是使用不同的可执行文件创建的。fmtutil --all
正常运行会将生成的格式放入$HOME/.texlive2013/texmf-var/web2c/
,并且应优先使用这些格式而不是系统texmf-var/web2c
版本。您应该能够找到生成的格式和日志文件,例如,使用locate pdflatex.fmt
。此信息可以帮助查明您的问题。
根据您提供的信息,无法确定是什么问题。您是否PATH
按照便携式 texlive 说明在终端会话中进行了设置?
fmtutil
通常会将生成的格式放入 中$HOME/.texlive2013/texmf-var/web2c
,因此会破坏可移植性。如果您实际使用,sudo fmtutil --all
则将$HOME
是 root 的值,并且任何生成的格式都不会对其他用户可用。
您可能想要使用fmtutil-sys --all
(PATH
适当设置)将生成的格式放入便携式 texmf-var 树(例如,与 texlive 的其余部分一起存储在 USB 密钥上)。
答案2
我遇到了类似的问题。我能够使用sudo fmtutil-sys --all
Arch-linux 机器上的命令解决它。@doed 的回复很有帮助。
答案3
我遇到了同样的问题:在运行 LaTeX 的同一文件夹中,有一个过时的 latex.fmt 文件。请将其删除。
答案4
我遇到了完全相同的问题,运行sudo fmtutil-sys --all
没有帮助。然后我用来locate pdflatex.fmt
查找有问题的文件的所有实例。locate
指向以下位置:
/home/phx/.texmf-var/web2c/pdftex/pdflatex.fmt
/home/phx/.texmf-var-BackUp/web2c/pdftex/pdflatex.fmt
/var/lib/texmf/web2c/pdftex/pdflatex.fmt
然后我复制/var/lib/texmf/web2c/pdftex/pdflatex.fmt
到/home/phx/.texmf-var/web2c/pdftex/pdflatex.fmt
。此后,一切又恢复正常。