我刚刚尝试过pdfcrop
,但是出现错误消息,提示我fmtutil.cnf
未找到该文件。
完整的错误信息是:
pdfcrop testfile.pdf
PDFCROP 1.38, 2012/11/02 - Copyright (c) 2002-2012 by Heiko Oberdiek.
kpathsea: Running mktexfmt pdftex.fmt
/usr/local/bin/mktexfmt: 395: /usr/local/bin/mktexfmt: /texconfig/tcfmgr: not found
fmtutil: config file `fmtutil.cnf' not found.
!!! Error: pdfTeX run failed with value 1!
locate fmtutil.cnf
结果是:
/usr/local/share/man/man5/fmtutil.cnf.5
/usr/local/share/man/man5/fmtutil.cnf.man5.pdf
/usr/local/texlive/2013/texmf-dist/doc/man/man5/fmtutil.cnf.5
/usr/local/texlive/2013/texmf-dist/doc/man/man5/fmtutil.cnf.man5.pdf
/usr/local/texlive/2013/texmf-dist/web2c/fmtutil.cnf
/usr/local/texlive/2013/texmf-var/web2c/fmtutil.cnf
/var/lib/texmf/web2c/fmtutil.cnf
我在 ubuntu 13.10 上使用 texlive(手动安装):
tlmgr --version
tlmgr revision 31673 (2013-09-16 18:03:22 +0200)
tlmgr using installation: /usr/local/texlive/2013
TeX Live (http://tug.org/texlive) version 2013
知道如何修复这个问题吗?
echo $PATH
给出这个:
/opt/texlive/2009/bin/x86_64-linux:/home/myuser/bin/aliases:/home/myuser/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/games:/var/lib/gems/1.8/bin
which pdfcrop
给出/usr/local/bin/pdfcrop
和
ls -l $(which pdfcrop)
lrwxrwxrwx 1 root root 48 Jan 1 16:03 /usr/local/bin/pdfcrop -> /usr/local/texlive/2013/bin/x86_64-linux/pdfcrop
kpsewhich pdfcrop
结果一无所获。
答案1
您的 PATH 变量值不正确:
/opt/texlive/2009/bin/x86_64-linux:/home/myuser/bin/aliases:/home/myuser/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/games:/var/lib/gems/1.8/bin
指向旧版本的 TeX Live,没有新版本的踪迹。这可能会让系统感到困惑。将其更改为
/usr/local/texlive/2013/bin/x86_64-linux:/home/myuser/bin/aliases:/home/myuser/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/games:/var/lib/gems/1.8/bin
如果您有 TeX Live 二进制文件的符号链接/usr/local/bin
,请将其删除:它们不会带来任何好处,甚至可能带来坏处。当然,这只是个人看法,所以请按照您认为最好的方式去做。
我通常建议添加一个/etc/paths.d
包含唯一行的文件
/opt/texbin
并创建符号链接
ln -s /usr/local/texlive/2013/bin/x86_64-linux /opt/texbin
这样,当发布新版本(例如 2014 年版本)时,你只需要执行
rm /opt/texbin
ln -s /usr/local/texlive/2014/bin/x86_64-linux /opt/texbin
(当然需要具有适当的权限)并且您不必担心更改配置文件或执行任何登录-注销过程。