如何在Travis CI上部署Agda库?

时间:2017-11-11 14:33:37

标签: travis-ci agda

我已经阅读了agda-stdlib项目中的.travis.yml,但它与纯粹用Agda编写的简单库(没有那些Haskell代码和Shell脚本)非常不同且复杂)。

我与stdlib的.tarvis.yml混淆了。我已经通过cabal install安装了agda,但是stdlib正试图在Travis CI上克隆和编译Agda,而且还有许多命令似乎无法构建它。

此外,agda-stdlib似乎可以在Ubuntu的源代码中找到。这可能是安装它的第三种方法。

此外,stdlib没有依赖关系,但我有。我也不知道如何添加依赖项。

结束我的问题:

  • 在上面列出的安装agda的3个选项中,我应该选择哪一个?
  • 如何添加让agda编译器知道我实际使用它的依赖项?

1 个答案:

答案 0 :(得分:1)

标准库有点特殊情况:它与Agda的开发版本保持同步。因此,通常情况下,无法使用您选择的发行版中可用的Agda版本进行编译(例如,因为它使用的是预先不可用的语法!)并且它被迫从github中提取最新版本。 / p>

安装Agda

如果您的库与分布式版本兼容,那么只需通过apt-get install agda将其从存储库中拉出来就会简单得多。

另外Scott Fleischman有一个基本的例子,说明如何使用泊坞窗图像来检查你的开发:https://github.com/scott-fleischman/agda-travis

安装依赖项

如果您的项目依赖于依赖项,那么您需要安装它们。在实践中,它可能意味着通过wget获取一堆tarball,并且~/.agda/libraries指向它们的库文件。

比照。 the manual on library management