ubuntu12.04-64位系统上安装s2e过程
2014-09-25 21:46
417 查看
S2E工具适用平台:
host OS: 64位ubuntu12.04或者64位Mac OS
guest OS:To run S2E, you need a QEMU-compatible virtual machine disk image. S2E can run any x86 operating system inside the VM.任何X86的OS都可以。
对比bitblaze的TEMU,他guest OS只能在ubuntu9.04 32-bit上实现良好,在windows XP和其他版本的linux上还有限制。不支持windows vista和windonws 7.
s2e官网:https://dslabredmine.epfl.ch/embedded/s2e/index.html
参考文章:/article/1735090.html
一。在ubuntu12.04-32位下安装:
安装s2e遇到的问题:
configure: error: C compiler cannot create executables
See `config.log' for more details.
make: *** [stamps/llvm-native-configure] 错误 77
于是找到config.log查看详细错误发现:
/usr/bin/ld.bfd.real: cannot find crt1.o: No such file or directory
/usr/bin/ld.bfd.real: cannot find crti.o: No such file or directory
错误太多,需要编译生成的文件还差很多。于是重新装了个ubuntu12.04 64位系统。
二。在ubuntu12.04-64位下安装:
1.build s2e
make时遇到问题如下图:
![](https://app.yinxiang.com/shard/s26/res/67e99925-1f1e-4893-93b4-5a745153ac51/Screenshot%20from%202014-09-24%2010%3A32%3A58.png?resizeSmall&width=635)
但是此次编译生成了QEMU-release文件夹,暂时忽略上面错误。
2.安装guest系统
在qemu上安装的镜像是debian-7.6.0-i386-CD-1.iso.
debian系统安装sudo,参见http://blog.sina.com.cn/s/blog_6c9d65a10101ces2.html
安装好系统以后进入系统apt-get install build-essential时出错:package build-essential has no installation candidate。查看source.list,发现里面只有updates的软件仓库,必须添加至少一个常规的仓库(
)。参见http://stackoverflow.com/questions/11955505/debian-squeeze-apt-get-errors
VM镜像的相关需求和建议:
在vanilla QEMU中安装OS。这是最快的方式。一般来说,所有的安装和组建工作都应该在vanilla QEMU中进行。
始终备份一个最新的OS。建议在进行每一次分析工作时都从一个新的OS备份开始。例如,如果使用一个镜像已经用来测试过设备驱动了,不要再用它来分析电子表格组件。一个镜像只进行一次分析。这样会更加利于管理而且更容易产生结果。
当S2E格式的镜像建立起来即将用于在符号执行模式下运行时,生成一个快照,可以在S2E-enabled QEMU中运行它。这个步骤不是必须的,但是这会大大地缩短启动时间,因为在S2E中启动一个镜像会花费很长时间。
建议在guest OS中使用128MiB的RAM(或者更少)。S2E并不会被内存的大小所限制,而你的物理机器会。
禁用桌面主题和一切图形化效果影响以减少资源消耗。
禁用屏幕保护程序。
禁用一切不必要的程序(如文件共享,打印,无线网络配置,防火墙等)来减少内存消耗并提高速度。
避免使用QEMU virtio网络接口。在这个版本的 QEMU中,它被打包到了S2E,可以有随机崩溃。
安装好guest系统后要实现host系统与它的文件传输,这里使用的时scp。
注意:在使用scp之间,host和guest都要开启ssh服务。但是在开启ssh服务后,两边是无法使用ssh传输文件,甚至连ping都不通,为什么?可能跟QEMU的网络配置有关。
host OS: 64位ubuntu12.04或者64位Mac OS
guest OS:To run S2E, you need a QEMU-compatible virtual machine disk image. S2E can run any x86 operating system inside the VM.任何X86的OS都可以。
对比bitblaze的TEMU,他guest OS只能在ubuntu9.04 32-bit上实现良好,在windows XP和其他版本的linux上还有限制。不支持windows vista和windonws 7.
s2e官网:https://dslabredmine.epfl.ch/embedded/s2e/index.html
参考文章:/article/1735090.html
一。在ubuntu12.04-32位下安装:
安装s2e遇到的问题:
configure: error: C compiler cannot create executables
See `config.log' for more details.
make: *** [stamps/llvm-native-configure] 错误 77
于是找到config.log查看详细错误发现:
/usr/bin/ld.bfd.real: cannot find crt1.o: No such file or directory
/usr/bin/ld.bfd.real: cannot find crti.o: No such file or directory
错误太多,需要编译生成的文件还差很多。于是重新装了个ubuntu12.04 64位系统。
二。在ubuntu12.04-64位下安装:
1.build s2e
make时遇到问题如下图:
![](https://app.yinxiang.com/shard/s26/res/67e99925-1f1e-4893-93b4-5a745153ac51/Screenshot%20from%202014-09-24%2010%3A32%3A58.png?resizeSmall&width=635)
但是此次编译生成了QEMU-release文件夹,暂时忽略上面错误。
2.安装guest系统
在qemu上安装的镜像是debian-7.6.0-i386-CD-1.iso.
debian系统安装sudo,参见http://blog.sina.com.cn/s/blog_6c9d65a10101ces2.html
安装好系统以后进入系统apt-get install build-essential时出错:package build-essential has no installation candidate。查看source.list,发现里面只有updates的软件仓库,必须添加至少一个常规的仓库(
[code]deb http://ftp.debian.org/debian/ 版本名 main contrib non-free
)。参见http://stackoverflow.com/questions/11955505/debian-squeeze-apt-get-errors
VM镜像的相关需求和建议:
在vanilla QEMU中安装OS。这是最快的方式。一般来说,所有的安装和组建工作都应该在vanilla QEMU中进行。
始终备份一个最新的OS。建议在进行每一次分析工作时都从一个新的OS备份开始。例如,如果使用一个镜像已经用来测试过设备驱动了,不要再用它来分析电子表格组件。一个镜像只进行一次分析。这样会更加利于管理而且更容易产生结果。
当S2E格式的镜像建立起来即将用于在符号执行模式下运行时,生成一个快照,可以在S2E-enabled QEMU中运行它。这个步骤不是必须的,但是这会大大地缩短启动时间,因为在S2E中启动一个镜像会花费很长时间。
建议在guest OS中使用128MiB的RAM(或者更少)。S2E并不会被内存的大小所限制,而你的物理机器会。
禁用桌面主题和一切图形化效果影响以减少资源消耗。
禁用屏幕保护程序。
禁用一切不必要的程序(如文件共享,打印,无线网络配置,防火墙等)来减少内存消耗并提高速度。
避免使用QEMU virtio网络接口。在这个版本的 QEMU中,它被打包到了S2E,可以有随机崩溃。
安装好guest系统后要实现host系统与它的文件传输,这里使用的时scp。
注意:在使用scp之间,host和guest都要开启ssh服务。但是在开启ssh服务后,两边是无法使用ssh传输文件,甚至连ping都不通,为什么?可能跟QEMU的网络配置有关。
相关文章推荐
- Win7安装64位CentOS 6.4双系统详细过程
- Win7安装64位CentOS 6.4双系统详细过程
- Win7安装64位CentOS 6.4双系统详细过程
- win7 系统下安装Tex Live过程,使用ISO镜像,不用区份32位系统或者64位系统
- Win7安装64位CentOS 6.4双系统详细过程
- 预装64位Win8/8.1电脑安装64位Win7详细过程(单/双系统)
- Ubuntu 14.04 64位系统 Theano配置安装过程,保证有效
- 预装64位Win8/8.1电脑安装64位Win7详细过程(单/双系统)
- ubuntu12.04 的64位系统安装jdk7
- RHEL6.2 64位系统Virtualbox虚拟机下安装过程
- ubuntu12.04 64位系统下 下安装itk和vtk
- ubuntu12.04的64位系统安装的注意事项
- Ubuntu12.04安装64位系统出现编译错误error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or dir
- windows7 64位系统安装QT4.8.0离线版时,应注意设置XP兼容模式,否则安装过程会出错
- 64位ubuntu 11.10系统安装android开发环境的过程
- Win10 64位正式版系统安装方法全过程图解(U大师)
- linux系统下安装64位mysql 5.6的过程
- win10 64位系统 微星GE62 安装Linux ubutuntu 系统Deepin的过程
- Win7旗舰版64位系统正确安装Genymotion模拟器步骤全过程
- Ubuntu12.04 64位中安装arm-linux-gcc的过程