[英]alt-ergo does not run on windows via cygwin
我正在嘗試使用alt-ergo證明器在frama-c上運行測試文件。 但是,我收到了alt-ergo的跟隨錯誤。 所有其他的frama-c檢查都沒問題。 我知道問題不在於測試文件。
------------------------------------------------------------
--- Alt-Ergo (stderr) :
------------------------------------------------------------
Fatal error: exception Sys_error("/tmp/wpf0dd65.dir/typed/test_post_2_Alt-Ergo.mlw: No such file or directory")
------------------------------------------------------------
[wp] [Alt-Ergo] Goal typed_test_post_2 : Failed
Error: Alt-Ergo exits with status [2]
我在一台Windows機器上並通過cygwin以管理員模式執行所有安裝我得到了frama-C Neon並安裝了./configure & make & make-install
,安裝成功(所有的frama-c檢查通過在我的測試文件中)
我從http://alt-ergo.ocamlpro.com/download.php獲得了以下版本的alt-ergo Linux x86_64二進制文件:alt-ergo-0.95.2-x86_64。 我使用這個版本,因為frama-c文檔要求版本0.95。
我使用以下說明安裝alt-ergo( https://www.lri.fr/~marche/MPRI-2-36-1/install.html )
安裝Alt-ergo
最簡單的方法是獲取alt-ergo的二進制文件。 下載名為“Linux x86_64 binary”的文件然后:
chmod +x alt-ergo-0.95.2-x86_64
sudo cp alt-ergo-0.95.2-x86_64 /usr/bin/alt-ergo
在調用時which
但frama-c和alt-ergo有正確的路徑
$ which frama-c
/usr/bin/frama-c
$ which alt-ergo
/usr/bin/alt-ergo
我也安裝了why3並檢測到ergo prover
$ why3 config --detect-provers
Found prover Alt-Ergo version 0.95.2, Ok.
1 provers detected and 0 provers detected with unsupported version
Save config to /home/username/.why3.conf
編輯
我使用在線示例創建了以下test.mlw
type 'a set
logic add : 'a , 'a set -> 'a set
logic mem : 'a , 'a set -> prop
axiom mem_add:
forall x, y : 'a. forall s : 'a set.
mem(x, add(y, s)) <->
(x = y or mem(x, s))
logic is1, is2 : int set
logic iss : int set set
goal g:
is1 = is2 ->
mem (is1, add (is2, iss))
運行alt-ergo導致:
alt-ergo test.mlw
File "file.mlw", line 1, characters 1-26:Valid (0.0156) (0)
有任何想法嗎?
以下處理症狀:使用帶有Windows路徑的-wp-out標志將解決問題
例如
frama-c -wp -wp-print -wp-out c:/Users/userName/Desktop/tmp2 ../../cygdrive/c/Users/userName/Desktop/swap.c
你能把以下例子放在“file.mlw”中
goal hello_world: 1+1 = 2
然后,嘗試通過提供“file.mlw”作為輸入來執行Windows和/或Cygwin二進制文件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.