如果 PHP (www-data) 无法访问所需的包,我如何让 PHP 编译 LaTeX 文档?
·
问题:如果 PHP (www-data) 无法访问所需的包,我如何让 PHP 编译 LaTeX 文档?
我有一个 PHP 脚本,它使用以下代码编译 LaTeX 文档:
exec('cd /path/to/doc && /usr/bin/latexmk -pdf filename.tex');
这适用于我的一些 LaTeX 文档,但我的最新文档无法编译,查看日志显示:
!pdfTeX error: pdflatex (file ecrm1000): Font ecrm1000 at 600 not found
==> Fatal error occurred, no output PDF file produced!
我发现这是 LaTeX 无法看到所需字体包的结果。当我在我的用户名下运行相同的编译命令时,文档会按应有的方式编译。所以我的问题是,我怎样才能让 PHP(作为 www-data 执行)来访问必要的 LaTeX 包?
我尝试使用以下方式在 www-data 帐户下安装所需的软件包:
sudo -u www-data sudo apt-get install texlive-fonts-recommended
但它要求输入 www-data 密码,我不相信它是由我设置的,也不是我扔给它的任何东西。
如果有任何帮助,我正在运行 Ubuntu 12.04。
解答
sudo mktexpk --destdir /usr/share/texmf-texlive/fonts/pk/ljfour/jknappen/ec/ --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1000
... 使所有用户都可以使用该字体(与 missingfont.log 相同,但带有 --destdir 参数)。
更多推荐
所有评论(0)