在 Catalina 上通过 nix 安装 mathcomp 8.12/8.13 时出现问题

Problems installing mathcomp 8.12/8.13 via nix on Catalina

I 运行 mathcomp 8.12,在 MacOS High Sierra 上使用 Proof General,使用 nix 版本 2.3.7。为此,我使用以下 shell 命令:

nix-shell -p coqPackages_8_12.mathcomp --run /Applications/Emacs.app/Contents/MacOS/Emacs

在新的 Mac 上,使用 MacOS Catalina,我使用 https://dev 中提供的(我希望)正确建议安装了 nix 版本 2.3.10。 to/louy2/installing-nix-on-macos-catalina-2acb。 运行 与之前相同的 nix-shell 命令,我设法获得了 Proof General 运行ning。但是以下 Coq/SSReflect 代码在第 3 行失败。

From Coq Require Import Init.Prelude Unicode.Utf8.
From mathcomp Require Import all_ssreflect.
From mathcomp Require Import fingroup.perm.

一条消息说明

Cannot find a physical path bound to logical path matching suffix fingroup and prefix mathcomp.

另一个奇怪的行为是,如果我删除有问题的 Require 并继续,就会在环境中找不到 addnBAC 引理(但是,其他引理如 subnDA 在那里!)。

对这里可能出现的问题有什么建议吗?我尝试通过更改 -p 选项转到 8.13,但得到了相同的结果。

您可能 运行正在安装 Coq 的系统版本,因为您没有告诉 nix-shellcoq 添加到您的 shell... 使用此系统您可能只安装了 ssreflect 的 Coq 版本(和旧版本)。

尝试运行

nix-shell -p coqPackages_8_12.coq -p coqPackages_8_12.mathcomp --run /Applications/Emacs.app/Contents/MacOS/Emacs

相反。