这是一份面向国内环境的 LaTeX 从零到可编译 指南:覆盖 TeX Live / MacTeX 安装、PATH 配置、CTAN 国内镜像(清华/北外/上交/中科大等)一键切换与回滚、常见坑位(权限、镜像路径、版本切换)、以及 XeLaTeX/latexmk 的实用建议。

关键点先说:TeX Live 的软件与宏包由 CTAN 镜像分发;安装器与包管理器 tlmgr 都可以指定或切换镜像。默认用 mirror.ctan.org 做“就近自动选择”,国内建议改成固定的近源镜像以提速与提高成功率。(TeX 用户组, CTAN)


0. 你需要准备什么

  • Windows、macOS 或 Linux 任一平台的普通用户权限(部分命令在系统级安装时需要管理员/sudo)。

  • 稳定的网络(国内建议固定 CTAN 国内镜像,加速明显)。

  • 一个编辑器(VS Code + LaTeX Workshop / TeXstudio / TeXworks 均可)。


1. 获取并安装发行版

1.1 Windows:TeX Live(官方安装器)

1)下载网络安装器 install-tl-windows.exe(TeX Live 官方)。
双击运行即可进入 GUI 安装;也可在命令行/无界面模式下带参数(如指定仓库)。(TeX 用户组, 数学FTP网站)

2)(可选)在安装阶段就指定国内镜像
如果你想全程走国内镜像,先打开命令行到下载目录,执行(示例:清华 TUNA):

install-tl-windows.exe -repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet

(GUI 模式里也能手动“选择镜像”。命令行参数 -repository/--repository 为官方支持。)(数学FTP网站, tug.ctan.org)

3)安装完成后,确认 PATH
TeX Live 的 Windows 可执行一般在 C:\texlive\2025\bin\windows,安装器通常会代你写入 PATH;若 xelatex -v 报找不到,就把该路径补进系统 PATH。(见“故障排查”)

4)验证:

tex -v
tlmgr -v
xelatex -version

1.2 macOS:优先用 MacTeX(TeX Live 的 macOS 发行包)

1)下载并安装 MacTeX(或更小的 BasicTeX)。安装器会为你创建并使用 /Library/TeX/texbin 这个符号链接,指向当年的 TeX Live 二进制目录;绝大多数 GUI/终端默认按这个路径找编译器。(TeX 用户组)

2)确认 PATH
新开终端执行:

which xelatex   # 一般应返回 /Library/TeX/texbin/xelatex
latex -v

若没生效,可在 ~/.zshrc 追加:

export PATH="/Library/TeX/texbin:$PATH"

(MacTeX 官方也建议把 /Library/TeX/texbin 放到 PATH 的最前,以避免与 Homebrew/MacPorts 下的同名工具冲突。)(TeX 用户组)


1.3 Linux:用官方 install-tl 安装脚本

1)下载并解压 TeX Live 网络安装器(或直接 wget 官方 install-tl 入口)。
2)命令行安装,直接指定国内镜像(示例:北外 BFSU):

sudo perl install-tl --repository https://mirrors.bfsu.edu.cn/CTAN/systems/texlive/tlnet

(如果只给出镜像站的根域名而不带 /systems/texlive/tlnet,安装器可能报仓库元数据找不到;务必包含该子路径。)(TeX 用户组, DEV Community)

3)完成后,把当年版本的二进制目录写入 PATH,例如:

# x86_64 Linux 示例
echo 'export PATH="/usr/local/texlive/2025/bin/x86_64-linux:$PATH"' >> ~/.bashrc
source ~/.bashrc

2. 配置 CTAN 国内镜像(安装后也能一键切)

TeX Live 自带包管理器 tlmgr,既能装/更包,也能设置默认仓库(即镜像)。常用国内镜像示例:

  • 清华 TUNA
    https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet(帮助页有 tlmgr 示例)(mirrors.tuna.tsinghua.edu.cn)

  • 北京外国语大学 BFSU
    https://mirrors.bfsu.edu.cn/CTAN/systems/texlive/tlnet(帮助页附永久/临时切换命令) (mirrors.bfsu.edu.cn)

  • 上海交通大学 SJTUG
    https://mirrors.sjtug.sjtu.edu.cn/ctan/systems/texlive/tlnet(目录可浏览) (mirrors.sjtug.sjtu.edu.cn)

  • 中国科学技术大学 USTC
    https://mirrors.ustc.edu.cn/CTAN/systems/texlive/tlnet(镜像站文档提供用法)

官方“自动就近”入口是 https://mirror.ctan.org/systems/texlive/tlnet(会重定向到附近镜像)。如遇同步延迟或跳到国外慢站,手动改为固定镜像即可。 (TeX 用户组)

2.1 永久切换默认仓库(推荐)

# Linux / macOS(按需加 sudo)
tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet# Windows(PowerShell 或 cmd 里同样可用)
tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet

tlmgr option repository <URL> 为官方支持的标准做法。)(TeX 用户组, tug.ctan.org)

2.2 仅本次操作临时用镜像

tlmgr update --self --all \--repository https://mirrors.bfsu.edu.cn/CTAN/systems/texlive/tlnet

(临时参数只对本次命令生效,适合“某镜像没同步某个包”时应急。)(mirrors.bfsu.edu.cn)

2.3 GUI 切换(可选)

tlmgr gui

TeX Live Manager 界面里:Options → Repository 选择镜像即可。(Windows 下也可用 tlshell/GUI 管理器改源。)(Medium)


3. 初次更新与基础包

1)先自更新 tlmgr,再全更包:

tlmgr update --self
tlmgr update --all

tlmgr 是 TeX Live 的包管理器,官方文档建议先 --self--all。)(TeX 用户组)

2)中文排版建议装好 ctex 宏包;最小安装或 BasicTeX 可能没带全:

tlmgr install ctex

3)推荐 latexmk:自动按需调用(pdfLaTeX/XeLaTeX/Biber):

tlmgr install latexmk
latexmk -pdf main.tex           # 走 pdfLaTeX
latexmk -xelatex main.tex       # 强制走 XeLaTeX(中文更稳)

4. “Hello, LaTeX(中文)” 自检

main.tex

\documentclass{ctexart}  % 中文友好:自动启用 xeCJK,建议配合 XeLaTeX
\begin{document}
你好,\LaTeX!这是一次成功的国内镜像安装与编译自检。
\end{document}

编译(推荐 XeLaTeX):

xelatex main.tex
# 或 latexmk -xelatex main.tex

5. 版本与安装选型:full / scheme / 最小

  • scheme-full(全量):最省心,磁盘占用最大。

  • scheme-small / basic:体积小、首次装包快,但用到没装的宏包需要再 tlmgr install

  • 大版本 按年维护(如 TeX Live 2025)。跨年重装更干净;同年内滚动更新靠 tlmgr。官方指南对 scheme、集合与包的关系有完整说明。(TeX 用户组)


6. Android/编辑器补充(可选)

  • 编辑器:VS Code + LaTeX Workshop、TeXstudio、TeXworks 均可。一旦 PATH 正确,编辑器只负责调用 latexmk/xelatex

  • minted 高亮:需要 Python pygments,并在编译命令加 -shell-escape

  • BibLaTeX + Biber:建议采用现代工具链,中文文献支持更好。


7. 常见问题与避坑

Q1:install-tl 报“找不到 texlive.tlpdb / repository 无效”?
A:你可能把镜像根地址当仓库了——必须带上 /systems/texlive/tlnet 子路径,例如:
https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet。 (DEV Community)

Q2:tlmgr 切源命令到底是什么?临时与永久怎么区分?
A:永久:tlmgr option repository <URL>;临时:任何 tlmgr ... --repository <URL> 的本次调用。(官方用法)(TeX 用户组, tug.ctan.org)

Q3(macOS):xelatex 找不到 / VS Code 报错?
A:把 /Library/TeX/texbin 放在 PATH 前列,重开终端/IDE;MacTeX 安装器默认创建这个链接并扩展 PATH(必要时手动追加)。(TeX 用户组)

Q4(Windows):tlmgr 提示需要管理员权限?
A:如果安装时选了“为所有用户”,部分操作需在“以管理员身份运行”的终端执行。或为当前用户单独安装 TeX Live(更易管控)。

Q5:版本切换/跨年升级
A:TeX Live 按年切版;跨年通常重装一个新版本最干净(Mac 用 MacTeX-当年版)。老版本可共存,新版会通过 /Library/TeX/texbin 指向最新(macOS)。(TeX 用户组)

Q6:镜像到底选谁?
A:就近、稳定、HTTPS——清华 TUNA / 北外 BFSU / 上交 SJTUG / USTC 都是常见选择;遇到“镜像未同步某新包”时,先临时切回 mirror.ctan.org 或换另一个国内镜像重试。(mirrors.tuna.tsinghua.edu.cn, mirrors.bfsu.edu.cn, mirrors.sjtug.sjtu.edu.cn)


8. 速查清单(复制即用)

安装阶段直接指定镜像

# Windows(命令行)
install-tl-windows.exe -repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet# Linux/macOS
sudo perl install-tl --repository https://mirrors.bfsu.edu.cn/CTAN/systems/texlive/tlnet

(不指定时默认走 mirror.ctan.org 自动分配。)(TeX 用户组)

安装后永久切源

tlmgr option repository https://mirrors.sjtug.sjtu.edu.cn/ctan/systems/texlive/tlnet

(或换成你偏好的国内镜像。)(mirrors.sjtug.sjtu.edu.cn)

仅本次临时切源并更新

tlmgr update --self --all \--repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet

(mirrors.tuna.tsinghua.edu.cn)

macOS PATH(若需手动)

echo 'export PATH="/Library/TeX/texbin:$PATH"' >> ~/.zshrc && source ~/.zshrc

(TeX 用户组)

自检

tex -v
tlmgr -v
latexmk -v
xelatex -version

9. 结语

TeX Live 的安装“看上去很复杂”,但抓住三件事就会非常顺滑:
1)选发行版(Windows 用 TeX Live,macOS 用 MacTeX);
2)设镜像(安装时指定或安装后 tlmgr option repository);
3)会用 latexmk/XeLaTeX(中文/参考文献一步到位)。

按这套流程,你基本可以在国内网络下稳定、快速地装好 LaTeX,并把后续“装包慢/网抖/仓库不通”的烦恼降到最低。祝排版顺利,早日 \clearpage


参考(精选)

  • TeX Live 官方安装/镜像与 install-tl 文档:mirror.ctan.org 自动选择、--repository 说明与示例。(TeX 用户组)

  • tlmgr 官方:命令、option repository、使用示例与基础指南(PDF)。(TeX 用户组, tug.ctan.org)

  • CTAN 国内镜像使用帮助与示例命令:清华 TUNA、BFSU、SJTUG。(mirrors.tuna.tsinghua.edu.cn, mirrors.bfsu.edu.cn, mirrors.sjtug.sjtu.edu.cn)

  • MacTeX:/Library/TeX/texbin 路径与 PATH 扩展行为(FAQ、ReadMe)。(TeX 用户组)

  • CTAN 镜像站列表(如需自行挑选/切换):(CTAN)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/96295.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/96295.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/96295.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WhoisXML API再次荣登2025年美国Inc. 5000快速成长企业榜单

WhoisXML API非常自豪地宣布&#xff0c;我们再次荣登美国权威榜单——2025年Inc.5000全美成长最快的私营企业之一。今年&#xff0c;公司在地区排名中位列第119名&#xff0c;在全美总体排名中位列第4,271名。Inc. 5000榜单要求参评企业必须保持独立运营&#xff0c;并在2021至…

Elasticsearch面试精讲 Day 9:复合查询与过滤器优化

【Elasticsearch面试精讲 Day 9】复合查询与过滤器优化 在Elasticsearch的搜索体系中&#xff0c;复合查询&#xff08;Compound Queries&#xff09;与过滤器&#xff08;Filters&#xff09;优化是构建高效、精准搜索逻辑的核心能力。作为“Elasticsearch面试精讲”系列的第…

Android使用ReactiveNetwork监听网络连通性

引入库 implementation com.github.pwittchen:reactivenetwork-rx2:3.0.8监听网络连接变更ReactiveNetwork.observeNetworkConnectivity(context).subscribeOn(Schedulers.io())// ... // anything else what you can do with RxJava.observeOn(Schedulers.computation()).subs…

基于阿里云部署 RustDesk 自托管服务器

基于阿里云部署 RustDesk 自托管服务器一、背景与需求场景二、什么是 RustDesk&#xff1f;为什么选择自托管&#xff1f;2.1 RustDesk 是什么&#xff1f;2.2 为什么选择自托管&#xff1f;三、环境准备与架构说明四、操作步骤4.1 在阿里云上安装 RustDesk 服务端4.1.1 下载并…

细说分布式ID

针对高并发写&#xff0c;分布式ID是其业务基础&#xff0c;本文从一个面试题细细展开。面试官&#xff1a;1.对于Mysql的InnoDB引擎下&#xff0c;自增ID和UUID作为主键各自有什么优劣&#xff0c;对于一张表的主键你建议使用哪种ID&#xff1f;2.除了UUID是否还了解其他类型的…

2025年大数据专业证书报考指南:专科学历必看的8大选择​

对于大专学历的同学来说&#xff0c;2025年进入大数据行业是一个充满机遇的选择。大数据领域发展迅速&#xff0c;各类证书能够帮助求职者提升专业能力、增强就业竞争力。其中最推荐的是CDA数据分析师&#xff0c;这个证书适应了未来数字化经济和AI发展趋势&#xff0c;难度不高…

Python爬虫实战:研究Axis Artist模块,构建电商数据采集和分析系统

1. 引言 1.1 研究背景与意义 在大数据时代,互联网上蕴藏着海量有价值的信息,这些信息涵盖了社会、经济、科技等各个领域。高效地从互联网获取数据并进行深度分析,对于企业决策、学术研究、市场分析等都具有重要意义。Python 作为一种功能强大的编程语言,凭借其丰富的库支…

突破大语言模型推理瓶颈:深度解析依赖关系与优化策略

突破大语言模型推理瓶颈&#xff1a;深度解析依赖关系与优化策略当ChatGPT需要5秒才能生成一个回答&#xff0c;当企业级大模型每秒只能处理3个用户请求——这些性能瓶颈的背后&#xff0c;隐藏着大语言模型推理计算中复杂的依赖关系网。在大语言模型推理过程中&#xff0c;依赖…

整理了几道前端面试题

1. 若是有两个数组ar1和ar2&#xff0c;求它们的并集和交集&#xff0c;要怎么做&#xff1f; const ar1 [1, 2, 3, 4]; const ar2 [3, 4, 5, 6];一、求并集 (Union) 目标&#xff1a; 把两个数组合并成一个新数组&#xff0c;新数组包含所有出现过的元素&#xff0c;但每个…

Mac M4环境下基于VMware Fusion虚拟机安装Ubuntu24.04 LTS ARM版

Mac M4环境下基于VMware Fusion虚拟机安装Ubuntu24.04 LTS ARM版 1 下载Ubuntu镜像 在Ubuntu官网下载Ubuntu24.04 LTS的arm版镜像&#xff0c;这里选择ubuntu-24.04-live-server-arm64.iso&#xff0c;支持arm的似乎没有合适的desktop版本&#xff0c;Server版本默认是不带图…

开源与定制化对比:哪种在线教育系统源码更适合教育培训APP开发?

如今&#xff0c;“在线教育系统源码”已经成为许多教育培训机构、创业者甚至传统学校的高频关键词。无论是打造一款在线教育APP&#xff0c;还是开发企业内部培训平台&#xff0c;源码选择都决定了后续的开发效率、产品体验与商业化潜力。 在实际开发中&#xff0c;常见的源码…

中间件的日志分析

将日志文件access.log复制到kali中进行分析使用命令查看文件中各IP的访问次数&#xff0c;依次分析其行为awk { print $1 } access.log | sort | uniq -c |sort -nr172.16.3.189cat access.log | grep 172.16.3.198行为模式分析使用固定弱密码进行身份验证 几乎所有请求都使用用…

【Big Data】云原生与AI时代的存储基石 Apache Ozone 的技术演进路径

目录 一、Apache Ozone是什么&#xff1f; 二、Ozone的诞生背景 三、Ozone的架构设计 1. 分层架构设计 2. Ozone Manager (OM) 3. Storage Container Manager (SCM) 4. DataNode 5. Raft协议应用 四、Ozone解决的关键问题 1. 元数据管理瓶颈 2. 小文件性能问题 3. …

抖音直播礼物弹幕抓取工具:技术实现与功能解析

基于Python的直播间数据采集技术实践一、项目概述基于Python开发的直播间数据采集方案&#xff0c;采用最新签名算法(dysign)实现稳定连接&#xff0c;实时获取直播间各类互动数据&#xff0c;为直播数据分析和互动应用开发提供技术支持。二、核心功能实时消息监控用户进入提醒…

添加地址页面,可以添加复制粘贴,自动识别地址的功能uniapp实现方式

主要用uni.getClipboardData(OBJECT)&#xff0c;更多信息可以到uniapp官网查看以下实现方式 1利用api, 2针对判断优化方案&#xff0c;在线APIhandleConfirm2(){let that this;promisRequest({url: https://wangzc.wang/smAddress,data: {"address": that.…

ESP32 驱动 PWM 舵机为什么必须共地?——从原理到实践全解析

在使用 ESP32 控制 PWM 舵机 的过程中,新手经常遇到一个常见问题:舵机不动、乱动、甚至烧坏芯片。 其中最典型的原因,就是没有正确共地。 很多初学者会疑惑:“外接电池只是给舵机供电,为什么还要把电池的地线接到 ESP32 的 GND 上呢?” 本文将从 信号逻辑、闭合回路、…

细菌基因组genome二代测序数据分析

kraken2去除污染conda create -n kraken2 conda activate kraken2 conda install kraken2 -c bioconda mkdir kraken2_outputkraken2 --db ../../kraken2_db/k2_pluspf_20250402/ --threads 8 --paired 250811_HS67EV0804_R1.fastq.gz 250811_HS67EV0804_R2.fastq.gz --use-nam…

工业网络架构的未来:智慧化工厂中的低延迟与高可靠性设计

1. 引言工业网络正经历从传统有线到无线、从低速到高速的全面升级。某铝箔智慧工厂专注于新能源铝箔的生产&#xff0c;依赖低延迟、高可靠的网络支持实现生产控制与智能管理。本文将探讨某铝箔智慧工厂网络架构设计的关键点及其实施策略。2. 某铝箔智慧工厂的网络挑战多终端接…

Android14 init.rc中on boot阶段操作4

Android14 init.rc中on early-init, init, late-init, early-fs, post-fs阶段详解1 Android14 init.rc的on late-fs, post-fs-data阶段主要操作详解2 Android14 init.rc中启动Zygote详解3 Android14 init.rc中on boot阶段操作4 1 on boot和低内存设备的启动优化 仅在ro.con…

CodeSandbox Desktop:零配置项目启动工具,实现项目环境隔离与Github无缝同步

你有没有过为了跑一个简单的 Demo&#xff0c;花半小时配置环境还失败的经历&#xff1f;比如想测试一个 Vue3 组件&#xff0c;先装 Node.js&#xff0c;结果版本太高和项目依赖不兼容&#xff1b;换低版本又提示 “找不到 python 环境”&#xff1b;好不容易装完依赖&#xf…