TeX Live 安装报错:为什么修改 TEMP 和 TMP 后就能正常安装?
一、问题背景在 Windows 系统中安装 TeX Live 2026 时我最开始将 TeX Live 安装到D:\latex但是安装过程中仍然出现了下面的错误open(C:\Users\D\x{00a1}\x{00c7}\x{00c7}\AppData\Local\Temp\ jAwfJF6xdB\XJVidyEL9z\a2ping.windows.r65891.tar.xz) failed: No such file or directory报错发生在安装软件包时Installing [0005/4980]: a2ping.windows刚开始我以为是 TeX Live 的安装位置有问题因此尝试把安装目录从 D 盘改到 C 盘C:\texlive\2026但安装时依然出现相同错误。后来发现问题并不在 TeX Live 最终安装到 C 盘还是 D 盘而是出在 Windows 的临时文件目录上。二、TeX Live 安装时涉及哪些路径安装 TeX Live 时实际上至少会使用三类路径。1. 安装源目录这是 TeX Live 安装文件所在的位置例如D:\texlive2026该目录中包含archive source texlive-doc tlpkg install-tl install-tl-windows.bat其中install-tl-windows.bat是 Windows 系统下用于启动 TeX Live 安装程序的批处理文件。2. 最终安装目录这是 TeX Live 安装完成后的存放位置例如D:\latex\2026安装完成后XeLaTeX、PDFLaTeX、LuaLaTeX 等程序会位于D:\latex\2026\bin\windows3. 临时文件目录这是本次问题的关键。TeX Live 在安装过程中并不是直接把所有文件写入最终安装目录。安装程序通常会先把软件包读取或复制到 Windows 临时目录中再进行校验、解压和安装。Windows 默认的临时目录通常是C:\Users\用户名\AppData\Local\Temp例如C:\Users\张三\AppData\Local\Temp即使最终安装位置设置成D:\latex\2026安装程序仍然可能先使用C:\Users\张三\AppData\Local\Temp因此只修改 TeX Live 的最终安装目录并不能改变其临时文件路径。三、为什么安装到 C 盘还是会报错原始报错中最值得注意的不是Installing to: C:/texlive/2026而是下面这一段C:\Users\D\x{00a1}\x{00c7}\x{00c7}\AppData\Local\Temp正常情况下这里应该显示一个完整、可识别的 Windows 用户名。但是日志中却出现了\x{00a1} \x{00c7}这通常说明安装程序在处理用户目录中的中文字符、特殊字符或字符编码时发生了异常。也就是说实际用户目录可能类似C:\Users\某个中文用户名\AppData\Local\Temp但是 TeX Live 安装程序内部的 Perl 程序没有正确识别这些字符于是将其显示为\x{00a1} \x{00c7}接下来安装程序尝试打开临时软件包a2ping.windows.r65891.tar.xz由于路径中的字符已经被错误解析程序找不到该文件于是报错No such file or directory因此这个报错并不是说a2ping.windows软件包本身不存在而是安装程序根据错误编码后的路径找不到它。四、为什么修改 TEMP 和 TMP 就能解决Windows 程序通常通过以下环境变量确定临时目录TEMP TMP部分程序还可能读取TMPDIRWindows 默认情况下这些环境变量通常指向C:\Users\用户名\AppData\Local\Temp我们可以在安装 TeX Live 之前临时将这些变量修改为一个不含中文和特殊字符的目录例如D:\tl-temp执行set TEMPD:\tl-temp set TMPD:\tl-temp set TMPDIRD:\tl-temp之后在同一个 CMD 窗口中启动 TeX Live 安装程序。此时安装程序会读取到新的临时目录D:\tl-temp而不再使用C:\Users\中文用户名\AppData\Local\Temp由于新路径全部由英文字母、冒号、反斜杠和连字符组成不存在中文字符编码问题因此安装程序能够正常读取、解压和安装软件包。整个安装流程可以理解为TeX Live 安装源 D:\texlive2026 ↓ 临时读取和解压目录 D:\tl-temp ↓ 最终安装目录 D:\latex\2026三个路径都是纯英文路径因此安装可以顺利完成。五、完整解决步骤第一步准备安装源将 TeX Live ISO 文件解压或挂载并确认安装源位于D:\texlive2026该目录中应当能够看到install-tl-windows.bat第二步准备最终安装目录创建目录D:\latex建议最终将 TeX Live 安装到D:\latex\2026按年份建立目录可以避免不同版本之间相互覆盖。第三步创建纯英文临时目录在 D 盘创建D:\tl-temp目录结构可以整理为D:\ ├─ latex ├─ tl-temp └─ texlive2026第四步以管理员身份打开 CMD在 Windows 开始菜单搜索cmd右键“命令提示符”选择以管理员身份运行然后执行mkdir D:\tl-temp set TEMPD:\tl-temp set TMPD:\tl-temp set TMPDIRD:\tl-temp可以使用下面的命令检查是否修改成功echo %TEMP% echo %TMP% echo %TMPDIR%正常情况下三条命令都应该输出D:\tl-temp第五步在同一个 CMD 中启动安装程序继续在当前 CMD 窗口中执行cd /d D:\texlive2026 call install-tl-windows.bat也可以直接执行call D:\texlive2026\install-tl-windows.bat随后会打开 TeX Live 图形安装界面。在安装界面中将安装根目录设置为D:/latex/2026然后开始安装即可。六、为什么必须在同一个 CMD 窗口中启动这是整个解决方案中最容易忽略的一点。下面的命令set TEMPD:\tl-temp set TMPD:\tl-temp只会修改当前 CMD 进程中的环境变量。它不会永久修改整个 Windows 系统也不会自动影响已经打开的资源管理器。可以把进程之间的关系理解为当前 CMD ├─ TEMPD:\tl-temp ├─ TMPD:\tl-temp └─ 启动 TeX Live 安装程序 ↓ 继承当前 CMD 的环境变量在同一个 CMD 中执行call install-tl-windows.batTeX Live 安装程序是由当前 CMD 启动的因此它会继承TEMPD:\tl-temp TMPD:\tl-temp但是如果设置完环境变量后关闭 CMD再到资源管理器中双击install-tl-windows.bat那么安装程序就不是由刚才的 CMD 启动而是由 Windows 资源管理器启动。此时进程关系变成Windows 资源管理器 ↓ 启动 TeX Live 安装程序 ↓ 使用系统原来的 TEMP 和 TMP安装程序又会使用C:\Users\中文用户名\AppData\Local\Temp于是原来的乱码路径问题可能再次出现。所以最关键的操作不是简单地执行set TEMP而是在设置 TEMP 和 TMP 的同一个 CMD 窗口中启动 TeX Live 安装程序。七、call命令有什么作用启动批处理文件时使用了call install-tl-windows.batcall的作用是从当前批处理或命令环境中调用另一个批处理文件并在其执行结束后返回当前命令环境。在本次安装中使用call可以明确保证install-tl-windows.bat从当前 CMD 环境启动安装程序继承当前设置的TEMP、TMP和TMPDIR批处理执行后CMD 窗口仍然保持可用便于查看安装程序启动过程中输出的错误信息。直接执行下面的命令通常也可以启动install-tl-windows.bat但是使用call更明确也更适合批处理文件调用场景。八、为什么不需要永久修改系统环境变量本次问题只需要在安装 TeX Live 时避开带有中文字符的临时目录因此没有必要永久修改 Windows 的系统环境变量。使用set TEMPD:\tl-temp只对当前 CMD 窗口和由它启动的程序有效。关闭这个 CMD 后Windows 原来的临时目录设置仍然保留不会影响其他软件。这种方式的优点是不会修改系统全局配置不会影响其他程序操作风险较小安装完成后不需要恢复关闭 CMD 后自动失效。如果以后重新安装或更新 TeX Live 时再次遇到类似问题可以重新执行相同命令。九、如何判断问题是否真正解决重新运行安装程序后可以观察安装日志中的临时路径。错误情况下可能显示C:\Users\某中文用户名\AppData\Local\Temp\随机目录或者显示无法识别的字符C:\Users\D\x{00a1}\x{00c7}\x{00c7}\AppData\Local\Temp正确设置后临时路径应当变成类似D:\tl-temp\jAwfJF6xdB\XJVidyEL9z同时安装目标应当显示Installing to: D:/latex/2026只要日志中不再出现原来的用户临时目录并且软件包能够继续安装就说明问题已经解决。十、常见错误操作1. 只修改最终安装目录例如将C:\texlive\2026修改为D:\latex\2026这只能改变最终安装位置不能改变临时目录因此无法解决用户目录编码问题。2. 设置 TEMP 后关闭 CMD执行set TEMPD:\tl-temp然后关闭 CMD再双击安装程序这样设置不会传递给安装程序。3. 临时目录仍然含有中文不建议使用D:\软件\临时目录建议使用D:\tl-temp4. 安装源路径含有中文或空格虽然部分程序能够处理空格但为了减少兼容性问题建议安装源也使用简短的纯英文路径D:\texlive2026而不是D:\我的软件\TeX Live 2026安装文件5. 误以为是安装包损坏报错中虽然出现a2ping.windows.r65891.tar.xz但这不一定表示该压缩包损坏或缺失。因为真正的错误是open(...) failed: No such file or directory结合异常编码路径来看更可能是安装程序找错了位置而不是安装源中没有这个软件包。十一、可直接使用的一组命令假设安装源为D:\texlive2026临时目录为D:\tl-temp最终安装目录准备设置为D:\latex\2026以管理员身份打开 CMD 后依次执行mkdir D:\tl-temp set TEMPD:\tl-temp set TMPD:\tl-temp set TMPDIRD:\tl-temp echo %TEMP% echo %TMP% echo %TMPDIR% cd /d D:\texlive2026 call install-tl-windows.bat随后在弹出的安装界面中将 TeX Live 安装目录设置为D:/latex/2026即可正常安装。十二、总结本次 TeX Live 安装失败的根本原因不是 TeX Live 安装在 C 盘还是 D 盘也不是D:\latex目录存在问题而是安装程序仍然使用了 Windows 默认临时目录C:\Users\用户名\AppData\Local\Temp当用户目录中包含中文或特殊字符时TeX Live 安装程序内部的 Perl 组件可能无法正确解析路径从而出现\x{00a1} \x{00c7}等异常字符最终导致No such file or directory解决方法是提前创建一个纯英文临时目录D:\tl-temp然后在管理员 CMD 中临时修改set TEMPD:\tl-temp set TMPD:\tl-temp set TMPDIRD:\tl-temp最后在同一个 CMD 窗口中运行cd /d D:\texlive2026 call install-tl-windows.bat这样TeX Live 安装程序就会继承当前 CMD 的环境变量绕开存在字符编码问题的用户临时目录从而顺利完成安装。一句话概括TeX Live 不是因为安装到了 D 盘才成功而是因为它的临时解压路径从含有中文字符的用户目录切换成了纯英文目录D:\tl-temp。

相关新闻

Turtlebot3 Burger硬件连接与ROS网络配置实战指南

Turtlebot3 Burger硬件连接与ROS网络配置实战指南

1. Turtlebot3 Burger基础连接与供电方案Turtlebot3 Burger作为ROS学习的主流移动平台,其硬件连接是后续开发的基础。不同于仿真环境,实体机器人需要特别注意供电稳定性问题。根据实测经验,建议优先采用树莓派直接供电方案,使用5V…

2026/8/20 21:20:45 阅读更多 →
trae cn 中ai开发配置skill mcp 规则参考(yudao-cloud项目-个人用)

trae cn 中ai开发配置skill mcp 规则参考(yudao-cloud项目-个人用)

全局安装的skill 命令安装 使用 -g skill 默认安装到 ~/.agents/skills 下 并在各支持的ai编程工具全局skills下创建软连接 — 可能会提示 PromptScript: PromptScript does not support global skill installation PromptScript不支持全局技能安装。原因&a…

2026/8/22 0:13:42 阅读更多 →
文旅数据实战:基于Python实现游客行为数据清洗与异常行为识别

文旅数据实战:基于Python实现游客行为数据清洗与异常行为识别

摘要:文旅行业日常产生大量咨询、预约、出团、回访原始数据,存在数据冗余、字段缺失、行为混杂等问题。同时团队带团场景中,存在少量违规异常行为数据(非常规人员入团、行程异常打卡等)。本文基于Python实现轻量化文旅…

2026/8/18 11:44:21 阅读更多 →

最新新闻

C语言扫雷游戏开发:从函数模块化到递归展开的完整实现

C语言扫雷游戏开发:从函数模块化到递归展开的完整实现

1. 从零到一:一个C语言扫雷游戏的完整构建思路最近在社区里看到不少朋友在讨论用C语言实现经典游戏,扫雷无疑是一个绝佳的练手项目。它不像贪吃蛇那样简单,也不像大型游戏引擎那样复杂,正好卡在一个能让你深入理解C语言核心特性—…

2026/8/22 19:36:48 阅读更多 →
层次分析法(AHP)实战指南:从原理到应用,30分钟掌握多准则决策

层次分析法(AHP)实战指南:从原理到应用,30分钟掌握多准则决策

1. 项目概述:为什么你需要掌握层次分析法?如果你正在准备数学建模比赛,或者在工作中需要处理一些涉及多因素、多目标的决策问题,那么“层次分析法”绝对是你工具箱里不可或缺的一把利器。我第一次接触这个方法是在大学参加美赛的时…

2026/8/22 19:36:48 阅读更多 →
TOPSIS算法实战:指标方向与向量标准化的Python实现

TOPSIS算法实战:指标方向与向量标准化的Python实现

1. 这不是“套公式”,而是把决策逻辑翻译成代码的全过程你打开一份数学建模赛题,看到“请综合考虑A、B、C三项指标对12个方案进行排序”,第一反应是不是翻出《数学建模算法与应用》第47页,抄下TOPSIS公式,然后对着Exce…

2026/8/22 19:36:48 阅读更多 →
路面质量建模:从物理世界到数字地图的四维解构

路面质量建模:从物理世界到数字地图的四维解构

1. 这道赛题不是在考数学,而是在考“如何把修路现场变成一张可计算的数字地图”2006年,“华为杯”第四届中国研究生数学建模竞赛C题——《高速公路路面质量改进的分析》——至今仍被不少高校建模指导教师列为“经典陷阱题”。它表面是道典型的工科应用题…

2026/8/22 19:36:48 阅读更多 →
古生物建模实战:翼龙飞行的逆向工程建模方法

古生物建模实战:翼龙飞行的逆向工程建模方法

1. 这不是一篇“论文”,而是一次真实建模现场的全程复盘2022年小美赛A题——“翼龙如何飞行”,表面看是个古生物力学问题,实则是一场对建模者物理直觉、数学抽象能力、工程实现韧性和跨学科整合意识的综合压力测试。我带学生组队参赛时&#…

2026/8/22 19:36:48 阅读更多 →
如何不折腾证书搞定安卓应用层抓包:r0capture 完整上手指南

如何不折腾证书搞定安卓应用层抓包:r0capture 完整上手指南

如何不折腾证书搞定安卓应用层抓包:r0capture 完整上手指南 【免费下载链接】r0capture 安卓应用层抓包通杀脚本 项目地址: https://gitcode.com/gh_mirrors/r0/r0capture 你多半经历过这样的抓包流程:代理工具配好了,请求一过中间人就…

2026/8/22 19:35:48 阅读更多 →

日新闻

沉金PCB工艺实战指南:从设计到SMT焊接的可靠性保障

沉金PCB工艺实战指南:从设计到SMT焊接的可靠性保障

在电子硬件开发领域,PCB(印制电路板)的沉金工艺是提升产品可靠性和焊接质量的关键环节。对于需要高密度互连、长期稳定运行或高频信号传输的板卡,如“黍姐仿通行证”这类可能涉及身份识别、数据交互的硬件项目,选择正确…

2026/8/22 0:00:11 阅读更多 →
电气考研电路八月强化四步法:从知识体系到真题实战的闭环攻略

电气考研电路八月强化四步法:从知识体系到真题实战的闭环攻略

这次我们来看一个针对电气考研电路科目的学习规划项目。它不是软件工具,而是一套聚焦于8月份关键节点的备考策略。对于电气工程考研的同学来说,电路分析是专业课的重中之重,也是拉开分差的关键。进入8月,复习进入强化阶段&#xf…

2026/8/22 0:00:11 阅读更多 →
消除AI代码的“AI味”:Claude Code设计优化技能配置与实战指南

消除AI代码的“AI味”:Claude Code设计优化技能配置与实战指南

大家好,我是专注于前端开发与AI工具实践的技术博主。在日常使用 Claude Code 等AI编程助手时,你是否也遇到过这样的困扰:生成的代码功能上没问题,但代码风格、组件设计、交互逻辑总透着一股“AI味”——布局单调、样式简陋、交互生…

2026/8/22 0:00:11 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/21 3:21:33 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/22 8:09:09 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/21 6:07:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/22 18:08:39 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/22 7:31:03 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/22 3:22:48 阅读更多 →