Coq 库的开发。 (添加 LoadPath 解决方案还不够好。)

Development of the Coq library. (Add LoadPath solution is not good enough.)

我正在向库中添加一些定理 https://github.com/coq-contribs/zfc

但是有一点不太好。 当我在 CoqIDE 中开发代码时,我必须添加

Add LoadPath "/home/user/0my/GITHUB/".

并重命名所有

Require Import Axioms.

Require Import ZFC.Axioms.

。图书馆的所有文件都在

/home/user/0my/GITHUB/ZFC

最后一个文件夹的名称很重要。

但是当我想要 运行 "make" 命令时,我必须重命名所有内容。

文件"Make"包含文件名和前缀。删除第一行没有解决问题。

我觉得用CoqIDE开发不是最好的做法,那我该怎么做呢?

已编辑 1:

我有"run_coqide.sh",其中包括

#!/usr/bin/env bash
COQPATH=/home/user/0my/GITHUB/ 
/home/user/opam-coq.8.8.1/4.02.3/bin/coqide

"From ZFC Require Import Sets. " 引发错误 "Cannot find a physical path".

编辑2:

我发现这是一个有效的脚本:

#!/usr/bin/env bash
export COQPATH=/home/user/0my/GITHUB/ 
/home/user/opam-coq.8.8.1/4.02.3/bin/coqide

这是正常的 运行 还是黑客攻击?

Make 重命名为 _CoqProject,这是 CoqIDE 当前识别的名称,它将在其中查找项目配置(特别是 -R . ZFC 选项,用于在CoqIDE 可见的目录)。 也可以将 CoqIDE 寻找的名称更改为 Make,但 _CoqProject 似乎确实是新标准。

请注意,-R . ZFC 选项允许您导入不合格的库,对应于命令 Add Rec LoadPath "/.../ZFC" as ZFC

我还建议将整个代码库实际切换为显式限定 ZFC.Axiom,您一直在本地手动进行,这样可以减少同时处理不同项目时出错的可能性。我不确定为什么有必要将内容重命名回 运行 make,我的理解是没有必要。

另请参阅 Coq 参考手册,about the coq_makefile utility