使用 amsfonts 和 \mathbb 时,我使用 pdflatex 时会遇到上述错误,但使用 latex/dvipdfmx 时不会出现错误。我想在 Inkscape 中渲染 LaTeX,这是那里使用的工具链。
我正在使用的(非常简单的)测试文件是:
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\[\mathbb{N} = \{1,2,3,\cdots\} \]
\end{document}
amsfonts 包已安装并使用,并且我已经安装了字体:
/usr/share/texlive/texmf-dist/fonts/afm/public/amsfonts/symbols/msbm10.afm
/usr/share/texlive/texmf-dist/fonts/source/public/amsfonts/symbols/msbm10.mf
/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
/usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm10.pfb
/usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm10.pfm
但是在 missfont.log 中,我有:
mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 msbm10
运行 pdflatex 时,出现以下警告和错误:
pdfTeX warning: pdflatex (file pdftex.map): cannot open font map file
] (./test.aux) ) </usr/share/texlive/texmf-dist/fonts/pk/ljfour/public/cm/dpi60
0/cmmi10.pk> </usr/share/texlive/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cm
sy10.pk> </usr/share/texlive/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmr10.
pk>
kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 msbm10
kpsewhich: symbol lookup error: kpsewhich: undefined symbol: kpathsea_cnf_line_env_progname
kpsewhich: symbol lookup error: kpsewhich: undefined symbol: kpathsea_cnf_line_env_progname
mktexpk: Cannot find mktex.opt; check your installation.
kpathsea: Appending font creation commands to missfont.log.
!pdfTeX error: pdflatex (file msbm10): Font msbm10 at 600 not found
==> Fatal error occurred, no output PDF file produced!
有人能解释一下为什么我在使用 pdflatex 时会遇到这个问题吗?
谢谢!
答案1
事实证明,这是 textlive-lib 库中的一个错误,它缺少一些符号(包括 kpathsea_cnf_line_env_progname)。升级到最新版本的库可以修复它(这是在 Fedora 32 上)。