Я пытаюсь запустить тестовый файл на frama-c с помощью альт-эрго-теста. Тем не менее, я получаю ошибку followng с alt-ergo. Все остальные проверки frama-c в порядке. Я знаю, что проблема не в тестовом файле.alt-ergo не запускается на окнах через cygwin
------------------------------------------------------------
--- 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]
Я на окна машины и выполнять все установки с помощью Cygwin в режиме администратора я получил Frama-C Неон и установил его с ./configure & make & make-install
, и установка прошла успешно (все Фрама-с проверки проходят в моем тестовом файле)
Я получил следующую версию бинарного файла alt-ergo Linux x86_64: alt-ergo-0.95.2-x86_64 от http://alt-ergo.ocamlpro.com/download.php. Я пошел с этой версией, так как документы frama-c запрашивают версию 0.95.
Я использовал следующие инструкции по установке альт-Ergo (https://www.lri.fr/~marche/MPRI-2-36-1/install.html)
Установка Alt-эргономичной
Самый простой способ, чтобы получить двоичный файл альт-эргометра. Скачать файл под названием «Linux x86_64 двоичным» Тогда:
chmod +x alt-ergo-0.95.2-x86_64
sudo cp alt-ergo-0.95.2-x86_64 /usr/bin/alt-ergo
при вызове which
но Frama-с и альт-эрго есть правильный путь
$ which frama-c
/usr/bin/frama-c
$ which alt-ergo
/usr/bin/alt-ergo
Я также why3 установлен и он обнаруживает Ergo испытатель
$ 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 test.mlw
File "file.mlw", line 1, characters 1-26:Valid (0.0156) (0)
Любые идеи?
Привет. Вы пытались выполнить непосредственно Alt-Ergo на /tmp/wpf0dd65.dir/typed/test_post_2_Alt-Ergo.mlw? Или установить его из источников? –
@MohamedIguernlala Я не уверен, как это сделать. Также/tmp/wpf ... является временным каталогом, который не создается. Я думаю, что проблема в том, что это машина для Windows, но установка была выполнена через cygwin (как требуется 3, alt-ergo, frama-c), поэтому у него есть проблема с поиском этого пути. – Quantico
Я загрузил alt-ergo для windows (только файл .exe) и поместил его в путь. попытка запустить ./alt-ergo.exe приводит к тому, что мой терминал просто висит там. как для/tmp/..../ нет такой директории. Каждый прогон генерирует другой файл tmp/random_name_directory. Я думаю, что проблема связана с windows/cygwin. Есть идеи? – Quantico