1

当我在安装 Klee之前尝试安装 LLVM 3.4 时出现此错误。

源代码从 LLVM 官方网站下载,并从 Klee 解压缩到单独的文件。llvm-3.4 目录中的 Makefile 用于构建 LLVM。

要构建 Klee,首先:

./configure --with-llvm=/home/zhangysh1995/work/llvm-3.4/ --wi
th-stp=/home/zhangysh1995/work/stp/stp

和错误:

....
checking for clang... FOUND
checking for clang++... FOUND
Using C llvm compiler : /usr/bin/clang
Using C++ llvm compiler : /usr/bin/clang++
checking C LLVM Bitcode compiler works... 
/home/zhangysh1995/work/llvm-3.4/Release+Asserts/bin/llvm-dis: In
valid type for value
configure: error: Failed converting LLVM Bitcode to LLVM assembly. Maybe your LLVM versions do not match?

似乎这个错误是从 Klee 抛出的,但正如 Klee 指南所说,我的 LLVM 版本没有问题。

此处此处发布了另一个类似的问题,但没有帮助。

我仍然不知道从哪里开始调试。我感谢任何可能的帮助。

4

1 回答 1

0

该错误意味着 klee 用于/usr/bin/clang++将示例源代码编译为 .bc 。然后用/home/zhangysh1995/work/llvm-3.4/Release+Asserts/bin/llvm-dis它来分解它。

$ /usr/bin/clang++ --version您可以通过比较和的输出来验证版本不匹配$ /home/zhangysh1995/work/llvm-3.4/Release+Asserts/bin/clang++ --version

要解决此问题,请使用:

 ./configure \
 --with-llvm=/home/zhangysh1995/work/llvm-3.4/ \
 --with-llvmcc=/home/zhangysh1995/work/llvm-3.4/Release+Asserts/bin/clang \
 --with-llvmcxx=/home/zhangysh1995/work/llvm-3.4/Release+Asserts/bin/clang++ \
 --with-stp=/home/zhangysh1995/work/stp/stp 
于 2017-07-20T04:37:01.857 回答