编译报错Cleaning failed: Latexmk: Error on first line of 'TJ-exam-8kai.log'.

发布于 2025-10-21 16:08:06

系统:Windows 11 专业版 24H2
发行版本:TeX Live 2024
编译环境:VS Code

问题:使用模板【非官方】天津大学的 LaTeX 试卷模板编写试卷时,由于siunitxphysics宏包冲突报错,故删去相关部分并停止使用physics宏包,但修改后仍无法编译文件,且重新下载原模板并打开也无法编译。报错信息如下图,具体表现为无法编译文件,无法生成*.log*.toc*.aux等文件。
补充:电脑上的其他*.tex文件均能正常编译

PixPin_2025-10-21_15-55-35.png

查看更多

关注者
0
被浏览
80
1 个回答
Sagittarius Rover
Sagittarius Rover 20小时前
这家伙很懒,什么也没写!

描述不完整

请尽可能补充更多的信息,一步步告诉别人你做了什么,以便别人复现你的问题...

例如:

由于siunitxphysics宏包冲突报错,故删去相关部分并停止使用physics宏包

具体删除了哪个文件的哪个部分,原先所谓「siunitxphysics宏包冲突报错」的报错信息是什么?

使用模板【非官方】天津大学的 LaTeX 试卷模板编写试卷

你贴的链接需要20积分下载,这意味着每个想回答问题的人都得花20积分,这对潜在的回答者不友好...

报错信息如下图,具体表现为无法编译文件,无法生成*.log*.toc*.aux等文件。

你图示的报错信息是从清除辅助文件开始的,并不完整,如有可能,应该补充完整。

但修改后仍无法编译文件,且重新下载原模板并打开也无法编译。

在重新编译的时候你是否删除了全部中间辅助文件再开始(?)


另外,不知为什么,我从链接处下载的文件中的设置文件名为:TJ-exam-8kai-settings.tex

而在TJ-exam-8kai.tex中的第二行却只有\input{settings}

\documentclass[AutoFakeBold,twocolumn,zihao=-4,UTF8,answers]{ctexart} % 
% \input{settings} 
\input{TJ-exam-8kai-settings}% 我做的替换

这点你完全没提到,情况是相同的吗?


由于latexmk会自动执行多个编译命令,只是方便了运行,但是不方便debug. 所以最好依次执行xelatex等一系列命令查看报错信息.

在windows11+TL2025上使用xelatex TJ-exam-8kai.tex编译上面的代码是可以得到.log的(不知道为什么.log上传不了...):

注意其中最后几行:

% Line 1497  TJ-exam-8kai.log
[2]
! Emergency stop.
<inserted text> }\endwrite 
                           
l.109 \end{document}
                    
Unbalanced write command

且此时是可以顺利得到PDF文件的:

image.png

至此,问题的关键是找到为何会出现Unbalanced write command...


进一步简化问题:

\documentclass[AutoFakeBold,twocolumn,zihao=-4,UTF8]{ctexart}% 
% \input{settings} 
% \input{TJ-exam-8kai-settings}
\begin{document} 
  
\section{\textbf{填空题}(aaa)}

\end{document}

! Emergency stop.<inserted text> }\endwrite报错

但是

\documentclass[AutoFakeBold,twocolumn,zihao=-4,UTF8]{ctexart}% 
% \input{settings} 
\input{TJ-exam-8kai-settings}
\begin{document} 
  
\section{\textbf{填空题}(aaa)}

\end{document}

则会出现上述报错,至此TJ-exam-8kai-settings.tex中必定有问题.

稍微做一些简化,你可以把代码删减到:

\documentclass{ctexart}% 
\ctexset{section={number = \bfseries\chinese{section}}}
\usepackage{zref-lastpage}
\begin{document} 
  
\section{\textbf{填空题}hello}

你好!

\end{document}

同样会得到:

[1]
! Emergency stop.
<inserted text> }\endwrite

l.10 \end{document}

的问题...

image.png

事实上这里没必要用\bfseries,可以把TJ-exam-8kai-settings.tex中的

\ctexset{section={
        name = {,、\hspace*{-5mm}},
        number = \bfseries\chinese{section},
        format = {\zihao{-4}},
        beforeskip = 9pt,
        afterskip = 4pt
       }}

修改为

\ctexset{section={
        name = {,、\hspace*{-5mm}},
        number = \chinese{section},
        format = {\zihao{-4}},
        beforeskip = 9pt,
        afterskip = 4pt
       }}

既可以避免上述的问题。

另外,这个模板并不新,真的一定要用吗?!


BTW, 还要注意到这个模板似乎是13-14年写的,tasks包还报了如下的一个警告:

Package tasks Warning: You've tried setting command `\NewTasks ' on line 56.
(tasks)                However, command `\NewTasks ' is deprecated. Please use
(tasks)                command `\NewTasksEnvironment ' instead. Refer to the
(tasks)                manual for details.

自己做修改,留做习题....

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览