"fd:6: hGetLine: end of file" in Cryptol



我已经从源代码编译并安装了cvc4。Cvc4 是按照建议下载并安装的,Cryptol 是从它的 git 存储库下载的。沙盒和安装完成,没有错误(GHC 7.8.3 x86_64)。只有在调用 cryptol 并发出 :prove True 后,才会出现此问题。这是一切:

athan@namek ~/lib> cryptol
                        _        _
   ___ _ __ _   _ _ __ | |_ ___ | |
  / __| '__| | | | '_ | __/ _ | |
 | (__| |  | |_| | |_) | || (_) | |
  ___|_|   __, | .__/ _____/|_|
            |___/|_| version 2.1.0 (8898348)
Loading module Cryptol
Cryptol> :prove True
cryptol: fd:6: hGetLine: end of file
athan@namek ~/lib> 

对此的任何帮助都将是巨大的。对我来说,感觉就像找不到一个共享库。这会导致此问题吗?谢谢。

在评论中总结对话:

问题中提到的"文件结束"错误通常归因于感兴趣的证明者(在本例中为 CVC4)仅"部分安装" - 在我的情况下,这始终是共享库的问题,可以通过从命令行调用二进制文件(cvc、布尔值等)来发现。 REPL将终止的错误票证位于Cryptol的github上。 幸运的是,这个问题在上游SBV中得到了修复,很快就会出现在Cryptol的SBV分支中。

WRT AthanClark的特殊情况仍然不知道CVC4在被Cryptol调用时失败的原因和方式 - 可能性包括cryptol调用与我们预期的二进制文件不同的二进制文件或环境差异,例如LD_LIBARARY路径变量。 无论哪种方式,听起来他都能够成功地使用替代证明者(boolector)。

编辑:如果你能产生Athan的错误,CVC在SBV之外而不是在SBV内部工作......你住在波特兰,然后给我发一条消息,出现在我的办公室,告诉我,我会感兴趣的。

最新更新