2017-09-26 65 views
3

我安装邮资-C在Ubuntu 14.04,使用下列命令:如何在Ubuntu 14.04上为Frama-c安装影响分析插件?

sudo apt-get install frama-c 

然而,当我使用下面的命令打开邮资-C的GUI:

frama-c-gui 

我无法找到左侧窗口中的“Impact Analysis”插件。

此图显示了我的邮资-C的当前可用的插件: Figure 1

我也提到了Frama-c web page却找不到任何联系我下载或安装的影响分析插件。

如何在Ubuntu 14.04上启用和使用Impact Analysis?

+0

正如您在编辑的消息中所看到的,不幸的答案是,使用Frama-C的旧版本(分布在Ubuntu 14.04中),您无法使用Impact插件,您必须升级到更多最近的Frama-C版本。 – anol

+0

谢谢!我用过OPAM,现在一切正常。 – shashibici

回答

2

从Neon-20140301开始,Impact插件已经与Frama-C一起安装,并且您无需执行任何特殊操作即可启用它,只需选择一个语句并找到正确的上下文菜单即可将其激活。

从你提到的邮资-C网页(以粗体显示的相关部分高亮):

影响分析,可通过在邮资-C++图形用户界面在每个语句一个上下文菜单。

在你的屏幕截图的左侧窗口包含文件树(上部,用文件名和全局变量/函数),并为这些插件插件板的名单,这注册了自己的GUI面板。请注意,并非所有插件都有相关的面板;例如,影响是一个只能通过上下文菜单才能使用的插件。

仔细观察Frama-C网站上的Impact插件页面,您会注意到所显示的屏幕截图不包括截图中的GUI部分,而是其左侧部分已经是Cil代码(省略您的截图):

Frama-C Impact plug-in GUI

要获得的截图所示的弹出式菜单中,你需要有一个声明强调的,不只是一个表达。请注意,在屏幕截图中,整个p = T;语句突出显示。否则,上下文菜单将不会显示“影响分析”项目。

在Frama-C GUI中选择语句的简单方法是在分号后单击。如果它是一个赋值语句,如上面的截图所示,您也可以单击等号来选择语句。但是,如果直接点击pT,则只会选择与这些变量相对应的表达式。因为Impact是基于语句而不是表达式的,所以在这种情况下它不会显示其上下文菜单。顺便说一句,如果您想检查您的Frama-C安装中是否有给定的插件,您可以简单地运行frama-c -plugins以获取已安装插件的列表,或者打开“分析”面板GUI(菜单分析/分析),每个插件包含一个条目。

编辑:与VM的测试后,我意识到的Ubuntu 14.04(忠实的)具有邮资-C氟(自2013年)在其包装,这是一个很老的版本,也有冲击插件,但由于某种原因,它当时并未包含在Debian软件包中(这就是为什么你不能使用它)。 Frama-C正在迅速发展,所以使用这样一个旧版本会导致几个问题。我真的建议尝试通过OPAM安装它。

+0

我做了你说的确切内容(点击语句而不是表达式),但我仍然看不到“影响分析”选项。另外,我运行'frama-c -plugins',但最终告诉我'-plugins'选项是未知的。我想知道Frama-c是否已经正确安装,只需使用apt-get install frama-c'。 – shashibici

+0

您可能正在使用Frama-C Sodium或更早的版本,在这种情况下'frama-c -help'应列出可用的插件。你可以运行'frama-c -version'并告诉你正在使用哪个版本? – anol

+0

顺便说一下,使用Frama-C Debian/Ubuntu软件包不再是安装Frama-C的首选方式(特别是它将安装旧版本); [推荐的方式](http://frama-c.com/install-phosphorus-20170501.html)通过OPam,即OCaml包管理器。然而它需要比使用apt-get更多的努力。优点是你可以升级到更新版本的Frama-C。 – anol