pdflatex 错误:未找到 600 处的字体 msbm10

pdflatex 错误:未找到 600 处的字体 msbm10

使用 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 上)。

更多信息请参阅https://bugzilla.redhat.com/show_bug.cgi?id=1905248

相关内容