Henry's Notebook
Many strange things
搜索
菜单
导航
首页
最近更改
随机页面
帮助
Henry's Home
个人资料
个人资料
创建账户
登录
消息
目前您没有通知。请访问您的
讨论页
以查看过去消息。
页面工具
内容页面
讨论
查看源代码
历史
首页
»
页面s
查看“KLEE”的源代码
←
KLEE
页面上次由
HenryHu
编辑于13年前
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:emailconfirmed
您可以查看与复制此页面的源代码。
KLEE: 某用symbolic execution的方法来产生能够遍历不同程序路径的test cases的工具,可以找到bug。 == 编译 == 如果编译KLEE的时候说: Bytecode libraries require LLVM capable compiler but none is available **** 那就是说,你的LLVM在configure的时候,没找到llvm-gcc。 基本上这是因为你没在编LLVM之前装llvm-gcc,或者装完了没加到path里去。 其实不加到path也可以,给configure加个参数,configure就不用自己到path里找llvm-gcc了。 加完了重新configure一下llvm,再编译安装就可以了。 == 重现 == 重现的时候可能碰到这个问题: islower.c:(.text+0x3f): undefined reference to `klee_make_symbolic' 虽然你在链接里面已经加了libkleeRuntest.a。 如果你把它换成这个.a里那个唯一的.o,那就换个错误: In function `klee_make_symbolic': klee/runtime/Runtest/intrinsics.c:76: undefined reference to `kTest_fromFile' 于是如果你再把KTest.o加进来,那就可以编译过…… 问题在于: 1. 其实还依赖另一个.a,libkleeBasic.a 2. 顺序问题 我不知道为啥会有这个问题,或许以后会了解。反正现在知道的是,如果你用了.a的东西,你就要把.a放到后面。 所以要这么编译: gcc islower.c klee/lib/libkleeRuntest.a klee/lib/libkleeBasic.a -Iklee/include/ 然后就没问题了……
返回至
KLEE
。