安装与排障

English · 使用 · 配置

环境要求

选择安装方式

在发行版 checkout 或解压后的安装目录执行:

bash setup.sh               # 默认仅安装 CLI 与 WebUI
bash setup.sh --with-lean     # CLI、WebUI、Lean 和 Mathlib
bash setup.sh --without-lean  # 仅 CLI 与 WebUI
bash setup.sh --install-lean  # 之后补装或修复 Lean

bash setup.sh 默认只安装 CLI 和 WebUI,不显示安装方式选择提示;交互终端与脚本调用行为一致。 安装 Lean/Mathlib 需要显式传入 --with-lean 或 --install-lean,已有 Lean 安装会保留。

轻量安装后,第一次获准执行本地 Lean goal、check、verify 或库操作时,可以自动 补装工具链,并显示安装进度和失败原因。自动补装只作用于发行包自带的 lean-workspace;远程 LeanSearch 和用户自己的 Lean 项目不会触发安装。

Setup 按需创建 .env,并在 ~/.local/bin/ 安装受管理的 mathcode 启动脚本。 已有配置会保留。安装包自带 CLI、WebUI 与 ripgrep,不需要源码 checkout 或 node_modules。

升级与修复

git pull --ff-only           # 适用于 clone 的发行仓库
bash setup.sh --without-lean # 也可按需选择 --with-lean
bash setup.sh --status

Setup 检查运行时版本和哈希,从对应 GitHub Release 修复缺失、过旧或无效的文件, 并在替换已有安装前验证下载内容的校验和。--status 显示 CLI、WebUI、ripgrep 和 Lean 的状态。升级后请重启正在运行的 WebUI daemon。

bash setup.sh --clean 清理已安装的运行时和工具链,保留 LeanFormalizations/ 中的证明、vault 数据和锁定的 Lake manifest;之后重新执行 setup。 全部选项见 bash setup.sh --help。

直接下载 archive

从 Releases 下载对应平台的 .tar.gz 和 SHA256SUMS.txt。用匹配条目验证 archive 后解压,在该目录运行 setup。Archive 是自包含的,只有需要修复时 setup 才会下载运行时文件。 手动更新时也要选择正确平台。

Lean 工具链选择

选择安装 Lean 时,默认使用 .local/elan 中的本地工具链,版本由 lean-workspace/lean-toolchain 锁定。Setup 保留随包提供的 lake-manifest.json,并要求 MathCodeLean readiness 构建成功;Mathlib cache 下载失败时可以回退到本地构建。

若要复用系统安装:

MATHCODE_SETUP_USE_SYSTEM_LEAN=1 bash setup.sh --with-lean

Lean 和 Lake 都必须符合锁定版本。Setup 将 Elan proxy 解析为具体可执行文件, 校验后把路径保存到 .env;不符合要求时回退到包内工具链。选择锁定工具链时会 忽略外部 ELAN_TOOLCHAIN 覆盖。用户自己的项目仍使用自己的工具链配置。

常见问题

现象 处理方法
Setup 后找不到 mathcode 打开新 shell,或直接使用 ./run。
exec format error 或 Bad CPU type in executable 重新执行 setup,或下载匹配系统和 CPU 的 archive。
缺少 Codex 认证 执行 codex auth login。
Lean 状态为 deferred 需要本地 Lean 时执行 bash setup.sh --install-lean。
升级后 WebUI 仍使用旧默认值 重启 daemon,并检查设置页的 Follow application defaults。

Setup 只替换自己创建的启动脚本。可用 MATHCODE_INSTALL_BIN_DIR 指定其他目录, 相对路径以安装包根目录为基准。写入启动脚本失败时仍可通过 ./run 使用安装包。