文章目录
-
- [1. 为什么在 macOS 上装 LaTeX 值得花十分钟](#1. 为什么在 macOS 上装 LaTeX 值得花十分钟)
- [2. 安装前的环境确认](#2. 安装前的环境确认)
- [3. 路线一:MacTeX 完整版(推荐)](#3. 路线一:MacTeX 完整版(推荐))
-
- [3.1 下载安装包](#3.1 下载安装包)
- [3.2 执行安装](#3.2 执行安装)
- [3.3 验证安装](#3.3 验证安装)
- [4. 路线二:BasicTeX 轻量安装](#4. 路线二:BasicTeX 轻量安装)
- [5. 路线三:Homebrew Cask 安装](#5. 路线三:Homebrew Cask 安装)
- [6. 第一个文档:中文排版跑通](#6. 第一个文档:中文排版跑通)
-
- [6.1 编写测试文件](#6.1 编写测试文件)
- [6.2 编译](#6.2 编译)
- [6.3 编辑器选择](#6.3 编辑器选择)
- [7. 常见问题排查](#7. 常见问题排查)
-
- [7.1 `pdflatex: command not found`](#7.1
pdflatex: command not found) - [7.2 中文显示为方框或乱码](#7.2 中文显示为方框或乱码)
- [7.3 宏包缺失 `File 'xxx.sty' not found`](#7.3 宏包缺失
File 'xxx.sty' not found) - [7.4 权限报错 `tlmgr: permission denied`](#7.4 权限报错
tlmgr: permission denied) - [7.5 安装包提示「无法打开,因为来自身份不明的开发者」](#7.5 安装包提示「无法打开,因为来自身份不明的开发者」)
- [7.1 `pdflatex: command not found`](#7.1
- [8. M5 机型专属配置要点](#8. M5 机型专属配置要点)
-
- [8.1 确认原生 arm64 工具链](#8.1 确认原生 arm64 工具链)
- [8.2 开启多核并行编译](#8.2 开启多核并行编译)
- [8.3 字体配置:优先使用系统原生字体](#8.3 字体配置:优先使用系统原生字体)
- [8.4 与 macOS 26 的兼容性注意点](#8.4 与 macOS 26 的兼容性注意点)
- [8. 日常维护建议](#8. 日常维护建议)
- [9. 小结](#9. 小结)

1. 为什么在 macOS 上装 LaTeX 值得花十分钟
LaTeX 在 macOS 上的生态其实相当成熟:官方发行版 MacTeX 提供了一键安装包,装完即可获得 TeX Live 全套宏包、编辑器 TeXShop、参考文献工具 BibDesk 以及字体管理工具 TeX Live Utility。相比 Linux 上手动折腾,macOS 的安装体验更接近「下载、双击、等待」。
本文覆盖三条路线:
- 推荐路线:MacTeX 完整版(约 5 GB),一次装好,后续几乎不用再管宏包。
- 轻量路线 :BasicTeX(约 100 MB)+
tlmgr按需安装宏包,适合磁盘紧张或只需要基础排版。 - 包管理路线 :Homebrew Cask 安装,适合习惯用
brew统一管理软件的用户。
同时会说明中文排版(ctex / XeLaTeX)的配置要点,以及常见报错的排查方法。
2. 安装前的环境确认
先确认系统版本与磁盘空间。MacTeX 完整版安装后占用约 5--7 GB,建议预留 10 GB 以上空间。
bash
# 查看 macOS 版本
sw_vers
# 查看磁盘剩余空间(人类可读格式)
df -h /
# 确认是否已安装过 TeX(避免重复安装)
which tex pdflatex xelatex lualatex
如果 which 有输出,说明系统里已有 TeX 发行版,先确认来源再决定是否覆盖安装:
bash
# 查看已有 TeX 的安装路径与版本
pdflatex --version
echo $PATH | tr ':' '\n' | grep -i tex
提示:Apple 芯片(M1/M2/M3/M4/M5)与 Intel 芯片的安装包是同一个通用二进制包(Universal 2),无需区分架构。M5 机型(如 2025 款 MacBook Pro)出厂即为 macOS 26 Tahoe,MacTeX 2025 及以上版本已完整适配,直接安装即可,无需 Rosetta 转译。
3. 路线一:MacTeX 完整版(推荐)
3.1 下载安装包
访问官方站点 tug.org/mactex,下载 MacTeX.pkg。文件约 5 GB,建议用浏览器或 curl 断点续传:
bash
# 使用 curl 下载(URL 以官网当前版本为准)
curl -L -C - -O https://mirror.ctan.org/systems/mac/mactex/MacTeX.pkg
国内网络下载较慢时,可换用 CTAN 镜像,例如清华 TUNA、中科大 USTC 的 systems/mac/mactex/ 目录。
3.2 执行安装
双击 MacTeX.pkg,一路「继续」,在安装类型页面可以取消勾选不需要的组件(如 Ghostscript、TeXShop 之外的 GUI 工具),最后输入管理员密码等待完成。安装过程通常需要 10--30 分钟。
也可以用命令行静默安装:
bash
sudo installer -pkg ./MacTeX.pkg -target /
3.3 验证安装
MacTeX 会把可执行文件链接到 /Library/TeX/texbin,并通过 /etc/paths.d/TeX 注入 PATH。新开一个终端窗口后验证:
bash
which pdflatex xelatex lualatex
pdflatex --version
tlmgr --version
正常输出应包含 TeX Live 2025(或你安装的年份)字样。若 which 无输出,见第 7 节的 PATH 排查。
在 M5 机器上还可以额外确认二进制架构,确保走的是原生 arm64 版本而非 Rosetta 转译:
bash
# 查看 pdflatex 的架构,应输出 arm64
file "$(which pdflatex)"
# 若显示 x86_64,说明当前终端运行在 Rosetta 下
arch
若 arch 输出 i386,说明终端被设成了「使用 Rosetta 打开」,在「访达 → 应用程序 → 实用工具 → 终端 → 显示简介」中取消勾选即可恢复原生 arm64 运行。
4. 路线二:BasicTeX 轻量安装
只需要基础排版能力时,BasicTeX 是更轻的选择:
bash
# 方式 A:官网下载 BasicTeX.pkg 后安装
sudo installer -pkg ./BasicTeX.pkg -target /
# 方式 B:用 Homebrew 安装
brew install --cask basictex
装完后按需补充宏包,tlmgr 会自动从镜像拉取:
bash
# 更新 tlmgr 自身与宏包索引
sudo tlmgr update --self
sudo tlmgr update --all
# 安装常用宏包
sudo tlmgr install ctex xecjk fandol latexmk biber
常用宏包对照:
| 宏包 | 用途 |
|---|---|
ctex |
中文排版基础宏包 |
xecjk |
XeLaTeX 中文支持底层 |
fandol |
开源中文字体(避免依赖系统字体) |
latexmk |
自动多次编译工具 |
biber |
biblatex 参考文献后端 |
5. 路线三:Homebrew Cask 安装
习惯用 Homebrew 的用户可以一条命令搞定完整版:
bash
brew install --cask mactex
# 或安装轻量版
brew install --cask basictex
安装后同样需要新开终端,或手动刷新 PATH:
bash
eval "$(/usr/libexec/path_helper -s)"
6. 第一个文档:中文排版跑通
6.1 编写测试文件
新建 hello.tex:
latex
\documentclass[UTF8]{ctexart}
\title{第一个 \LaTeX{} 文档}
\author{Your Name}
\date{\today}
\begin{document}
\maketitle
\section{引言}
你好,\LaTeX{}。这是一段中文测试文本,用于验证字体与断行是否正常。
\section{公式与列表}
行内公式 $E = mc^2$,独立公式如下:
\begin{equation}
\int_{-\infty}^{+\infty} e^{-x^2}\,\mathrm{d}x = \sqrt{\pi}
\end{equation}
\begin{itemize}
\item 第一项
\item 第二项
\end{itemize}
\end{document}
6.2 编译
中文文档请使用 XeLaTeX 或 LuaLaTeX ,不要用 pdflatex:
bash
# 单次编译
xelatex hello.tex
# 推荐:用 latexmk 自动处理多次编译与参考文献
latexmk -xelatex -interaction=nonstopmode hello.tex
# 清理中间文件
latexmk -c
编译成功后目录下会生成 hello.pdf。
6.3 编辑器选择
- TeXShop:MacTeX 自带,开箱即用,适合入门。
- VS Code + LaTeX Workshop :功能最全,支持保存即编译、PDF 双向跳转。安装扩展后建议在
settings.json中配置:
json
{
"latex-workshop.latex.recipes": [
{
"name": "xelatex",
"tools": ["xelatex"]
},
{
"name": "latexmk (xelatex)",
"tools": ["latexmk-xelatex"]
}
],
"latex-workshop.latex.tools": [
{
"name": "xelatex",
"command": "xelatex",
"args": ["-synctex=1", "-interaction=nonstopmode", "-file-line-error", "%DOC%"]
},
{
"name": "latexmk-xelatex",
"command": "latexmk",
"args": ["-xelatex", "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "%DOC%"]
}
],
"latex-workshop.view.pdf.viewer": "tab"
}
- TeXstudio / Overleaf:前者跨平台桌面端,后者为在线方案,无需本地安装。
7. 常见问题排查
7.1 pdflatex: command not found
PATH 未生效。检查 /etc/paths.d/TeX 是否存在,并确认当前 shell 的配置文件:
bash
cat /etc/paths.d/TeX
# 应输出:/Library/TeX/texbin
# 临时加入 PATH
export PATH="/Library/TeX/texbin:$PATH"
# 永久生效(zsh 用户)
echo 'export PATH="/Library/TeX/texbin:$PATH"' >> ~/.zshrc
source ~/.zshrc
7.2 中文显示为方框或乱码
- 确认使用
xelatex而非pdflatex; - 文档类使用
ctexart/ctexrep/ctexbook,或加载\usepackage[UTF8]{ctex}; - 若系统缺少中文字体,安装
fandol宏包:sudo tlmgr install fandol; - 也可显式指定字体:
\setCJKmainfont{PingFang SC}(macOS 自带苹方)。
7.3 宏包缺失 File 'xxx.sty' not found
bash
# 搜索宏包所属的 TeX Live 包名
tlmgr search --global --file xxx.sty
# 安装对应包
sudo tlmgr install <package-name>
7.4 权限报错 tlmgr: permission denied
MacTeX 安装目录归 root 所有,tlmgr 写操作需要 sudo:
bash
sudo tlmgr update --self --all
若不想每次加 sudo,可把 TeX Live 目录改为当前用户所有(不推荐,可能影响系统更新):
bash
sudo chown -R $(whoami) /usr/local/texlive/2025
7.5 安装包提示「无法打开,因为来自身份不明的开发者」
在「系统设置 → 隐私与安全性」页面底部点击「仍要打开」,或右键安装包选择「打开」。
8. M5 机型专属配置要点
M5 芯片在 LaTeX 使用上有几处值得单独说明的地方,配置好之后编译速度与稳定性都会更好。
8.1 确认原生 arm64 工具链
M5 是纯 arm64 架构,只要安装的是 MacTeX 2025 及以后版本,xelatex、lualatex、latexmk 全部为原生二进制,无需 Rosetta。用下面的命令一次性核对:
bash
# 逐个检查关键可执行文件的架构
for bin in pdflatex xelatex lualatex latexmk biber; do
printf "%-10s " "$bin"
file "$(which $bin)" | grep -o 'arm64\|x86_64' | head -1
done
全部输出 arm64 即为最佳状态。
8.2 开启多核并行编译
M5 的多性能核在批量编译时优势明显。latexmk 本身不并行,但可以配合 -jobs 让底层引擎并行处理,或直接用 make -j 组织多文档项目:
bash
# 单文档:latexmk 调用 xelatex,开启 4 个并行任务
latexmk -xelatex -jobs=4 -interaction=nonstopmode hello.tex
# 多文档项目:用 Makefile 并行编译
make -j8
对应的极简 Makefile:
makefile
TEXS := $(wildcard *.tex)
PDFS := $(TEXS:.tex=.pdf)
all: $(PDFS)
%.pdf: %.tex
latexmk -xelatex -interaction=nonstopmode $<
clean:
latexmk -c
8.3 字体配置:优先使用系统原生字体
M5 机型预装的 macOS 26 自带更完整的字体集,中文排版可直接调用苹方,无需额外安装 fandol:
latex
\documentclass[UTF8]{ctexart}
% 使用 macOS 原生字体,渲染质量更好
\setCJKmainfont{PingFang SC}[BoldFont=PingFang SC Semibold]
\setCJKsansfont{PingFang SC}
\setCJKmonofont{Heiti SC}
\begin{document}
中文正文使用苹方渲染。
\end{document}
若需要跨平台一致性(例如同时提交给 Linux 服务器编译),再退回 fandol 宏包更稳妥。
8.4 与 macOS 26 的兼容性注意点
- 系统完整性保护(SIP) :macOS 26 默认开启 SIP,
/usr/local/texlive目录不受影响,tlmgr正常使用sudo即可。 - 首次运行授权 :M5 新机首次执行
xelatex时,系统可能弹出「是否允许终端访问文件」的提示,选择「允许」。 - Gatekeeper:MacTeX 安装包已签名公证,正常双击即可安装;若从镜像站下载的包被标记,按第 7.5 节处理。
- Spotlight 索引 :TeX Live 目录文件极多,可在「系统设置 → Spotlight → 搜索隐私」中把
/usr/local/texlive加入排除列表,减少索引开销。
8. 日常维护建议
bash
# 定期更新宏包(建议每月一次)
sudo tlmgr update --self --all
# 切换 CTAN 镜像为国内源,加速下载
sudo tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet
# 查看已安装宏包
tlmgr list --only-installed | head -20
另外,MacTeX 自带 TeX Live Utility(图形界面),可以可视化地更新宏包、切换镜像、查看安装日志,适合不习惯命令行的用户。
9. 小结
| 需求 | 推荐方案 |
|---|---|
| 一次装好、长期使用 | MacTeX 完整版 |
| 磁盘紧张、只需基础功能 | BasicTeX + tlmgr |
| 统一用 Homebrew 管理 | brew install --cask mactex |
| 中文排版 | XeLaTeX + ctex 文档类 |
| 日常编辑 | VS Code + LaTeX Workshop 或 TeXShop |
| M5 机型 | MacTeX 2025+ 原生 arm64,latexmk -jobs=4 并行编译 |
装好之后,把 xelatex 和 latexmk 用熟,基本就能覆盖论文、报告、简历等绝大多数场景。遇到宏包缺失,记住 tlmgr search --file 加 tlmgr install 这两步,绝大多数问题都能自己解决。 |