You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

更新TexStudio、MikTex后使用memoir.cls的LaTeX文档编译报错如何解决?

LaTeX编译memoir.cls报错问题修复

报错现象

将TexStudio升级至4.0.3、MikTex升级至4.4版本后,依赖ppgccufmg文档类的项目编译时在memoir.cls处抛出大量错误,不使用memoir.cls的简单文件编译正常,降级、重装两款软件均无法解决问题。
报错截图:
memoir.cls报错

最小复现代码

\documentclass[msc]{ppgccufmg}

\begin{document}
\end{document}

问题根因

该报错为第三方文档类ppgccufmg与高版本memoir的兼容性冲突:ppgccufmg基于2022年之前发布的v3.x版本memoir开发,MikTex 4.4内置的v4.x版本memoir对底层接口做了大量调整,移除了大量旧版宏定义,因此调用ppgccufmg类时会触发报错。此前对两款软件的降级、重装操作无法解决是因为MikTex默认会拉取最新版memoir包,未匹配文档类要求的旧版本。

解决方案

  • 方案1(最稳定):降级memoir包版本
    打开MikTex控制台,切换到「包」标签页,搜索找到memoir包,右键选择「降级到指定版本」,选择任意3.7.x系列版本安装,完成后重新编译即可。
  • 方案2(无需修改系统包):添加兼容补丁
    在LaTeX文件最开头、\documentclass声明之前添加以下代码,手动补全高版本memoir移除的旧接口:
\makeatletter
\def\@memptr{0}
\def\mem@maxsecnumdepth{5}
\let\mem@old@startsection\@startsection
\def\@addtoreset#1#2{\@namedef{cl@#1}{\@nameuse{cl@#2}\@elt{#1}}}
\makeatother

内容的提问来源于stack exchange,提问作者Cláudio Almeida

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 21:24:02