我正在尝试安装 STAC 来执行污点分析。我已经安装了 STAC 的必要条件,即 frama-c。然后我从 http://code.google.com/p/tanalysis/ 结帐 svn

当我从 tanalysis 目录中运行 make 时。它遇到了一些难以为 Cil 包含库的问题。

    Unbound Cil

我通过添加修复路径
   -I /usr/local/share/frama-c/lib -I /usr/local/lib/ocaml/3.12.1/cil/

但是当我再次运行make时,它给出了一个错误
b/ocaml/3.12.1/cil/ -I /usr/lib/frama-c/ -c ptranal.ml
File "ptranal.ml", line 135, characters 36-43:
Error: This expression has type Cil_types.lhost * Cil_types.offset
   but an expression was expected of type
     Cil.lval = Cil.lhost * Cil.offset
make: *** [ptranal] Error 2

请帮助我构建 STAC 并进行污点分析。

最佳答案

看起来像是 STAC 的 Makefile 中的一个错误。

CFLAGS=-I $(FRAMAC_SHARE)/lib -c

应替换为(未测试)
FRAMAC_LIBDIR:=$(shell frama-c -print-lib-path)
CFLAGS=-I $(FRAMAC_LIBDIR) -c

FRAMAC_LIBDIR 绝对没有理由应该是 FRAMAC_SHARE 的子目录。

关于ubuntu - 在 Ubuntu 上安装 STAC,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12656461/

10-12 18:00