Agda:使用 Stack 安装时找不到 std-lib
Agda: Can't find std-lib when installing with Stack
我正在尝试编译一个 Agda 文件,但我无法找到标准库。我看过文档 here.
我已经使用 Stack 安装了它:
> which agda
/home/joey/.local/bin/agda
并且我已经为我的 Agda 目录设置了环境变量:
> echo $AGDA_DIR
/home/joey/.agda
其中填充了正确的文件:
/home/joey/agda/agda-stdlib/standard-library.agda-lib
> cat "$AGDA_DIR"/libraries
/home/joey/agda/agda-stdlib/standard-library.agda-lib
> cat "$AGDA_DIR"/defaults
standard-library
> cat /home/joey/agda/agda-stdlib/standard-library.agda-lib
name: standard-library
include: src
但是,当我去编译一个 Agda 文件时,我得到以下错误:
Failed to find source of module Function in any of the following
locations:
/home/joey/agda/AutoInAgda/src/Function.agda
/home/joey/agda/AutoInAgda/src/Function.lagda
/home/joey/.stack/snapshots/x86_64-linux-nopie/lts-8.14/8.0.2/share/x86_64-linux-ghc-8.0.2/Agda-2.5.2/lib/prim/Function.agda
/home/joey/.stack/snapshots/x86_64-linux-nopie/lts-8.14/8.0.2/share/x86_64-linux-ghc-8.0.2/Agda-2.5.2/lib/prim/Function.lagda
when scope checking the declaration
open import Function
如何告诉 Agda 去哪里寻找标准库?这是因为堆栈的问题吗?
我在 Ubuntu 17.10,如果有影响的话。
事实证明,如果你的根目录中有一个.agda-lib 文件,它会完全忽略默认文件。所以关键是在该文件中明确包含 standard-library
。
我错过了一个愚蠢的事情,但希望有同样问题的其他人能找到这个答案。
我正在尝试编译一个 Agda 文件,但我无法找到标准库。我看过文档 here.
我已经使用 Stack 安装了它:
> which agda
/home/joey/.local/bin/agda
并且我已经为我的 Agda 目录设置了环境变量:
> echo $AGDA_DIR
/home/joey/.agda
其中填充了正确的文件:
/home/joey/agda/agda-stdlib/standard-library.agda-lib
> cat "$AGDA_DIR"/libraries
/home/joey/agda/agda-stdlib/standard-library.agda-lib
> cat "$AGDA_DIR"/defaults
standard-library
> cat /home/joey/agda/agda-stdlib/standard-library.agda-lib
name: standard-library
include: src
但是,当我去编译一个 Agda 文件时,我得到以下错误:
Failed to find source of module Function in any of the following
locations:
/home/joey/agda/AutoInAgda/src/Function.agda
/home/joey/agda/AutoInAgda/src/Function.lagda
/home/joey/.stack/snapshots/x86_64-linux-nopie/lts-8.14/8.0.2/share/x86_64-linux-ghc-8.0.2/Agda-2.5.2/lib/prim/Function.agda
/home/joey/.stack/snapshots/x86_64-linux-nopie/lts-8.14/8.0.2/share/x86_64-linux-ghc-8.0.2/Agda-2.5.2/lib/prim/Function.lagda
when scope checking the declaration
open import Function
如何告诉 Agda 去哪里寻找标准库?这是因为堆栈的问题吗?
我在 Ubuntu 17.10,如果有影响的话。
事实证明,如果你的根目录中有一个.agda-lib 文件,它会完全忽略默认文件。所以关键是在该文件中明确包含 standard-library
。
我错过了一个愚蠢的事情,但希望有同样问题的其他人能找到这个答案。