我正在尝试使用 AUCTeX 在 Emacs (26.1) 中编译 LaTeX 源文件,并在 Emacs 缓冲区中查看生成的 PDF 输出。我使用的是 Windows 10 操作系统,并在 Emacs 中下载了最新的 TeXLive 发行版以及 pdftools 包。
根据安装说明,我下载的其他软件包括 minGW、Ghostscripts 和 Strawberryperl这里
当我在 LaTeX 缓冲区中输入适当的编译命令(Cc Ca)时,系统会提示我在迷你缓冲区中输入命令 Cc Cl 来查看编译结果。
此命令打开了第二个窗口,但它没有显示源文件的输出(PDF 格式),而是显示了一条很长的错误消息,其中最重要的部分我已粘贴在下面
! ==> Fatal error occurred, no output PDF file produced!
Transcript written on pdflatex.log.
fmtutil [ERROR]: running `pdftex -ini -jobname=pdflatex -progname=pdflatex -translate-file=cp227.tcx *pdflatex.ini <nul' return status 1
fmtutil [ERROR]: return error due to options --strict
fmtutil [INFO]: Disabled formats: 6
fmtutil [INFO]: Not selected formats: 32
fmtutil [INFO]: Failed to build: 1 (pdftex/pdflatex)
fmtutil [INFO]: Total formats: 39
fmtutil [INFO]: exiting with status 1
D:\TexLive\2018\bin\win32\runscript.tlu:803: command failed with exit code 1:
perl.exe d:\TexLive\2018\texmf-dist\scripts\texlive\fmtutil.pl --user --byfmt pdflatex
Running the command D:\TexLive\2018\bin\win32\fmtutil-user.exe
I can't find the format file `pdflatex.fmt'!
kpathsea: Running mktexfmt pdflatex.fmt
The command name is D:\TexLive\2018\bin\win32\mktexfmt
TeX Output exited abnormally with code 1 at Tue Oct 9 18:06:02
D:\emacs-26.1-x86_64\bin
知道我在这里遗漏了什么吗?
*编辑我的文件路径中包含的非默认值
D:\MinGW\bin;D:\texlive\2018\bin\win32;D:\Programs\StrawberryPerl\c\bin;D:\Programs\StrawberryPerl\perl\site\bin;D:\Programs\StrawberryPerl\perl\bin;D:\emacs-26.1-x86_64\bin;D:\TexLive\2018\tlpkg\tlgs\bin;
**编辑:如评论中所述,运行全新安装的 MiKTeX 和 Emacs 解决了该问题。我怀疑这是 TeXLive 发行版的损坏安装。
***编辑:通过重新安装 TeXLive 解决了问题。问题很可能是由于 TeXLive 发行版安装错误造成的。
答案1
为了使 emacs 安装保持简单,直到您有信心进行修改,第一步是下载并安装一个可以工作的 tex 发行版,可以是 MiKTeX 或 Tex live,它们现在都具有内置的 TeXworks 编辑器和查看器(MiKTeX 更受欢迎,因为它的初始下载更轻量,并且在我看来,如果它损坏了,很容易卸载/重新安装)为确保 pdfLaTeX 正常工作,您可以启动 TeXworks 并加载标准示例,以节省您的搜索时间(并确保它不受之前编辑尝试的影响)下载并保存至文档当您打开它时,TeXworks 可能会出现问题,但如果您继续,一切顺利,您会看到编译后的 PDF。如果没有,那么您遇到了 MiKTeX 或 Tex Live 的基本问题,需要针对它们提出问题。
emacs 下载链接请访问https://www.gnu.org/software/emacs/download.html我推荐 32 位,因为它适用于 32 位和 64 位 Windows,因此请按照链接首先下载 README,然后打开当前/最新文件夹(此时为 emacs-26)并下载并解压缩 emacs-26.1-x86_64.zip 或 32 位 emacs-26.1-i686.zip
阅读自述文件并按指示安装(此时您不需要 Msys2)。要启动 vanilla emacs,请使用 runemacs 或 emacs.exe 的快捷方式。要添加 Auctex,请按 Alt-x,然后在下方命令窗口中的 Mx add 后按回车list-packages
键。由于尚未安装,您可以选择 auctex(当前为 12.1.1)
安装它,但你不会看到编辑器有任何变化,直到你打开以前的sample2e.tex文件,当编辑器工具栏界面发生变化时添加额外的TeX相关命令。
您使用 TeXworks 检查了发行版是否正常工作,因此现在您在同一个文件夹中拥有之前的 .tex 和 .pdf。单击将spectacles icon
打开之前编译的 pdf。因此,在此阶段,您可以检查是否可以看到输出。如果没有,您需要检查您的 pdf 查看器。如果一切正常,请关闭 pdf 并在编辑器中在以 开头的行下添加您的姓名 \maketitle
。从菜单中选择Command
> Compile and View
,您现在应该会看到测试页,其中您的姓名位于文本内容的开头。这是您第一次成功的编辑,祝您好运。