S2E安装

来源:互联网 发布:mac去除app store角标 编辑:程序博客网 时间:2024/06/18 01:24

S2E安装

S2E是什么就不科普了,GitHub一搜就知道了。想着装一个瞅瞅人家怎么弄的,然而过程比较曲折。由于已经装好才想起来写,就在这里记录安装过程中出现的问题及解决办法。

1、手边没有Ubuntu的镜像,遂官网下载Ubuntu,版本16.04,64bit。网传32bit会出问题。
2、安装过程中首先出现了无法构建QEMU编译环境的问题,每次apt-get build-dep都会报错,发现是Ubuntu软件源没有勾选source code,而且安装过程中更换软件源后没有apt-get upgrade将已安装软件与源中的软件保持一致(详见另一个帖子)。
3、之后make报错,说找不到……./bits/目录中的一个头文件找不到,build目录下qemu的目录都没有生成,编译失败。各种尝试无果。报错:

/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/cstddef:43:10: fatal error:       'bits/c++config.h' file not found:In file included from /home/qldx/Desktop/S2E/s2e/build/llvm-3.2.src/include/llvm/ADT/SmallVector.h:#include <bits/c++config.h>         ^17:In file included from /home/qldx/Desktop/S2E/s2e/build/llvm-3.2.src/include/llvm/Support/AlignOf.h:19:/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/cstddef:43:10: fatal error:       'bits/c++config.h' file not found#include <bits/c++config.h>         ^

4、于是更换为S2E官方用的Ubuntu 12.04,……./bits/目录下头文件找不到的问题不再出现,但是s2etools编译失败,s2ecmd等都没有正常编译生成可执行文件。报错: gnu/stubs-32.h: No such file or directory。
5、猜想可能是缺少32位的库。一番google百度之后,印证想法。
6、使用apt-get install g++-multilib,之后顺利完成所有编译。
7、同样的方法在Ubuntu 16.04上不起作用。
8、网传有错误可以先不管,只要看到qemu-release的说法个人认为不靠谱,有warning肯定是没问题的,有error是一定不对的,只要有error就说明有的地方没有编译成功,就不算是安装成功了。
9、本贴对应于S2E文档Getting started->Building the S2E Platform一节。

0 0
原创粉丝点击