无法使用opam安装frama-c-Phosphorus

时间:2017-06-04 13:00:28

标签: frama-c opam

我已按照说明使用opam成功安装了frama-c-Silicon,但是当我想升级到Phosphorus时,opam不起作用。

我使用了命令:

  

opam pin添加frama-c下载/ frama-c-Phosphorus20170501.tar.gz

它说:

[NOTE] Package frama-c is already path-pinned to
       /home/talos/Downloads/frama-c-Phosphorus-20170501.tar.gz.
       This will erase any previous custom definition.
Proceed ? [Y/n] y

[frama-c] /home/talos/Downloads/frama-c-Phosphorus-20170501.tar.gz synchronized

frama-c needs to be installed.
The following actions will be performed:
  ∗  install frama-c-base 20161101*           [required by frama-c]
       Why3 can be used by the WP plug-in for running additional automatic solvers
       Coq can be used with the WP plug-in for proving interactively proof obligations
  ∗  install frama-c      20161101*
       Alt-Ergo Graphical Interface can be used by the WP plug-in
===== ∗  2 =====
Do you want to continue ? [Y/n] y

=-=- Gathering sources =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[frama-c.20161101] /home/talos/Downloads/frama-c-Phosphorus-20170501.tar.gz already up-to-date
[frama-c-base.20161101] /home/talos/Downloads/frama-c-Phosphorus-20170501.tar.gz already up-to-date

=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

#=== ERROR while installing frama-c-base.20161101 =============================#
These patches didn't apply at /home/talos/.opam/system/build/frama-c-base.20161101:
  - 4.05-support.patch



=-=- Error report -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
The following actions were aborted
  ∗  install frama-c 20161101
The following actions failed
  ∗  install frama-c-base 20161101
No changes have been performed
[NOTE] Pinning command successful, but your installed packages may be out of
       sync.

1 个答案:

答案 0 :(得分:2)

我认为您的问题更多地与OPAM本身(特别是opam pin)的使用相关,而不是与Frama-C相关。

这一行特别表明您在OPAM安装中pin了一个Frama-C包:

[NOTE] Package frama-c is already path-pinned to
       /home/talos/Downloads/frama-c-Phosphorus-20170501.tar.gz.
       This will erase any previous custom definition.

只有在OPAM中提供Phosphorus软件包之前,才需要这样做。您应该通过删除它然后通过“标准”(非固定)方式安装它来恢复默认配置:

opam pin remove frama-c
# just in case, you may want to unpin the frama-c-base package, if it is pinned
opam pin remove frama-c-base
# then install the package normally; you may need to update OPAM to make
# sure the package is available in your repository
opam update
opam install frama-c

请注意,如果仍然显示消息,例如:

The following actions will be performed:
  ∗  install frama-c-base 20161101*           [required by frama-c]

这可能表明OPAM的限制存在问题。

Phosphorus版本号为20170501。除此之外的任何东西意味着你不会得到Phosphorus,而是旧版本。不值得继续:这个问题必须事先解决。

相关问题