Mac中LaTex无法编译的问题

最近在使用TexStudio时,遇到一个棘手的问题:

无法编译,提示如下:

kpathsea: Running mktexfmt xelatex.fmt

/Library/TeX/texbin/mktexfmt: kpsewhich -var-value=TEXMFROOT failed, aborting early. BEGIN failed--compilation aborted at /Library/TeX/texbin/mktexfmt line 25.

Process exited with error(s)

以往,把错误提示复制到搜索引擎,一般都能找到类似问题,按照大家的经验,总能解决。但这次,无论如何也找不到类似错误提示。或许有,我看不懂。

这里尝试分析一下这个错误。

kpathsea

是一个解决编译过程中文件搜索问题的库,是由Karl Berry编写的,因此该程序命名为K arl's Path Sea rching简称为kpathsea。想详细了解一些可以看看对作者的采访

mktexfmt xelatex.fmt

mktexfmt是一个脚本(程序),它用于生成TeX

Live中的格式文件。在LaTeX中,格式文件是预先编译的文件,可以使LaTeX快速地处理文档。 比如,当执行 pdflatex

的时候,实际上 LaTeX 会调用 pdflatex.fmt 这个预编译好的格式文件来快速处理 pdflatex。

在LaTeX系统中,.fmt文件是格式文件(format

file),它是预编译的,其中包含了LaTeX的所有宏定义,字符信息,以及其他的基础格式设置。这样,每次运行LaTeX的时候,就不必重新读取所有的宏定义和格式设置,大大加快了编译速度。

当然,.fmt文件不仅只用于LaTeX,还用于TeX和其他一些TeX的变体。

.fmt文件通常在TeX系统安装或是更新时自动生成,也可以手动创建。TeX系统在启动时会加载一个.fmt文件,该文件决定了将要使用的格式。例如在启动LaTeX时,系统会加载latex.fmt文件。

网上没搜到合适的解释,所以上面引用的文字是我问的chatGPT,它的回答。

继续问chatGPT

问题是:

在只用TexStudio编译tex文件时,遇到了错误提示"kpathsea: Running mktexfmt xelatex.fmt

/Library/TeX/texbin/mktexfmt: kpsewhich -var-value=TEXMFROOT failed, aborting early. BEGIN failed--compilation aborted at /Library/TeX/texbin/mktexfmt line 25.

Process exited with error(s)",可能是什么原因?

回答是:

这个错误可能是由于你的电脑的TeX安装有问题。这可能是由于安装过程中的错误,或者是你的TeX环境变量没有正确设置。

具体来讲,错误提示显示kpsewhich

-var-value=TEXMFROOT命令失败,这说明在运行这条命令查找TeX安装的根目录时出了问题。mktexfmt是TeX用来创建格式文件的程序,当它找不到需要的文件或者无法确定TeX的根目录时,就会退出并给出错误。

如果你能够确保TeX已经正确安装,并且你知道TeX安装的实际路径,你可以尝试在终端中执行下面的命令以设定环境变量:

export TEXMFROOT=/your/texmf/root

这里的/your/texmf/root应当替换为你电脑中TeX的实际安装路径。

如果你不确定TeX的实际安装路径,那也可能需要重新安装TeX。你可以去TeX Live官网下载最新的安装包,按照其指示进行安装。

在大多数情况下,这些步骤能够解决问题。如果问题仍然存在,你可能需要寻找专业的TeX支持或者在TeX社区发。

chatGPT的回答是不错的,但我是在写这个文章的时候才想起来问它。写文章之前其实已经解决了问题。现在看来,如果早点儿问chatGPT,能够更快地找到问题所在。

实际问题所在

可能是由于我卸载了以前版本的TexLive,但实际上没有卸载干净,新安装后,TexStudio默认的编译引擎所指向的地址实际找不到引擎。

解决办法

在TexStudio的preference中,设置引擎路径为正确的路径。。

或者把以前版本删干净后再重新安装,我怕删错了,没试。

相关推荐
GEEKVIP4 小时前
Android 恢复挑战和解决方案:如何从 Android 设备恢复删除的文件
android·笔记·安全·macos·智能手机·电脑·笔记本电脑
逢生博客9 小时前
Mac 搭建仓颉语言开发环境(Cangjie SDK)
macos·华为·鸿蒙
Rverdoser12 小时前
MacOS Catalina 从源码构建Qt6.2开发库之01: 编译Qt6.2源代码
macos
GEEKVIP15 小时前
如何在没有备份的情况下恢复 Mac 上丢失的数据
经验分享·笔记·安全·macos·电脑·笔记本电脑·改行学it
yanling202315 小时前
黑神话悟空mac可以玩吗
macos·ios·crossove·crossove24
Vzhangs17 小时前
MacOS Sonoma(14.x) 大写模式或中文输入法下的英文模式,光标下方永远会出现的CapsLock箭头Icon的去除办法
macos
2401_852403551 天前
Mac导入iPhone的照片怎么删除?快速方法讲解
macos·ios·iphone
Vzhangs1 天前
MacOS Safari浏览器按ESC就退出全屏模式的去除办法
macos·safari
htt7892 天前
ARP:IP到MAC地址转换
服务器·tcp/ip·macos
名字不要太长 像我这样就好2 天前
【iOS】push和pop、present和dismiss
学习·macos·ios·objective-c·cocoa