我pdflatex
从 Ubuntu 上作为 cgi-bin 应用程序调用的 shell 脚本(在默认www-data
用户下运行)开始,有时我会遇到以下类型的错误,阻止编译:
kpathsea: Running mktextfm larm0700
mktextfm: mktexdir ./.texmf-var/fonts/tfm/lh/lh-t2a failed.
kpathsea: Appending font creation commands to missfont.log.
./thebook.tex:330: Font T2A/cmr/m/n/7=larm0700 at 7.0pt not loadable: Metric (T
FM) file not found.
<to be read again>
relax
l.330 10 м/с\textsuperscript{2}
./thebook.tex:330: ==> Fatal error occurred, no output PDF file produced!
Transcript written on thebook.log.
检查表明.texmf-var/fonts/tfm/lh/lh-t2a
在工作目录中创建了一个空目录(与mktexdir
消息相反)。
运行相同的脚本可以sudo -u www-data
暂时修复问题:生成字体,然后可以从 cgi-bin 脚本编译此特定文档。但它无法提供稳定的结果:当需要新字体时,cgi-bin 脚本再次停止工作。
答案1
通过添加解决了这个问题
export HOME='/var/www'
添加到命令前的 shell 脚本中pdflatex
。