BitBlaze Vine和TEMU的安装
来源:互联网 发布:nginx动静分离 编辑:程序博客网 时间:2024/06/03 11:05
在安装之前自然需要下载Vine和TEMU的源代码啦。Vine的官网(戳这里)和TEMU的官网(戳这里)分别提供了Vine和TEMU的源码下载。在下载完成后,下面开始Vine和TEMU的安装。
一、gcc-3.4的安装和设置
本次安装的平台是Ubuntu 12.04,使用的编译器是gcc-3.4.6。Ubuntu 12.04的默认编译器是gcc-4.6,但是TEMU安装的编译只支持gcc-3.4版本(没错,3.3不行,4.x也不行,%>_<%)。结果就是,在正式开始进行安装时,还需要先将编译器的版本“升级”为3.4.6。
1. 确认一下这些都已经安装了
sudo apt-get install ncurses-dev
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install build-essential
2. 下载安装gcc-3.4.6
下载地址:戳我呀戳我呀戳我呀
安装gcc-3.4.6需要的包有:
gcc-3.4-base_3.4.6-6ubuntu3_i386.deb
gcc-3.4_3.4.6-6ubuntu3_i386.deb
cpp-3.4_3.4.6-6ubuntu3_i386.deb
g++-3.4_3.4.6-6ubuntu3_i386.deb
libstdc++6-dev_3.4.6-6ubuntu3_i386.deb
将这些包放在一个目录下,本文中为/home/gcc-3.4。
进入该目录并执行安装命令:
cd /home/gcc-3.4
dpkg –i *.deb
3. 切换默认的gcc版本
gcc-3.4.6安装完成之后需要将它设置成默认编译器,命令如下:
update-alternatives –config gcc
可以看到系统里现有的版本如下:
选择我们需要的gcc-3.4版本为默认(automode),即输入0或1。
到这里gcc-3.4.6已经安装并且设置完毕。可以通过命令:gcc –v来查看当前的版本号。
二、Vine的安装
1. 本文中的Vine和TEMU都安装在目录/home/bitblaze下。首先创建该目录,并将Vine解压到该目录下:
cd ~
mkdir bitblaze
cd bitblaze
tar xvzfvine-1.0.tar.gz
此时,在解压后的目录/home/bitblaze/vine-1.0/doc下能够找到文件install-vine-release.sh文件,里面将会指导你安装vine的步骤。本文之后的步骤与之相同。
2. 安装编译Vine使用的g++:
sudo apt-get install g++
3. 由于Vine的后端使用了OCaml,需要安装OCaml支持部件:
sudo apt-get install ocamlocaml-findlib libgdome2-ocaml-dev camlidl libextlib-ocaml-dev ocaml-native-compilers
sudo apt-get installlibocamlgraph-ocaml-dev
4. 安装BFD库:
sudo apt-get install binutils-dev
5. 安装building documentation
sudo apt-get install texlive texlive-latex-extratransfig hevea
6. 终于到了安装Vine:
cd vine-1.0
./configure
make
cd ../doc/howto
make doc
至此,Vine已经安装完成。
7. 安装Vine遇到的一些问题
1) 在执行sudo make的时候,遇到:
In file included from./disasm/asm_program.cpp:16:0:
/usr/include/libiberty.h:106:36:error: newdeclaration ‘char* basename(const char*)’
/usr/include/string.h:603:28:error:ambiguates old declaration ‘const char* basename(const char*)’
......
解决方法:
编辑文件libasmir/src/disasm/asm_program.cpp,在#include"libiberty.h"前添加:
#defineHAVE_DECL_BASENAME 1
2)再次sudo make,又出现新的错误:
./vex/irtoir-i386.cpp:In function‘std::string reg_offset_to_name(int)’:
./vex/irtoir-i386.cpp:269:14:error: a castto a type other than an integral or enumeration type cannot appearin aconstant-expression
……
在头文件libvex_basictypes.h使用offset的代码前面添加:
#include<stddef.h>
用系统的offsetof定义取代vine的定义
再次sudo make就可以通过了
三、TEMU的安装
1. 同样的,先将TEMU解压到bitblaze目录下:
cd ~
cd bitblaze
tar xvzf/tmp/temu-1.0.tar.gz
在解压后的目录/home/bitblaze/temu-1.0/doc下有文件install-temu-release.sh知道我们如何安装temu。文档中,除了安装gcc的方法不能用外,其他的都是正确的。本节,剩余的部分与文档内容相同。
2. 安装QEMU相关的内容
sudo apt-get install qemu
sudo apt-getbuild-dep qemu
3. 安装TEMU
cd temu-1.0
./configure --target-list=i386-softmmu --proj-name=tracecap --cc=gcc-3.4--prefix=$(pwd)/install
make
make install
至此,TEMU安装完成。
4. TEMU安装遇到的问题
在执行编译指令
./configure --target-list=i386-softmmu --proj-name=tracecap --cc=gcc-3.4 --prefix=$(pwd)/install
时,产生错误,显示/usr/lib/ld: cannot find –lgcc_s
解决方法:
首先使用指令:locate libgcc_s.so在/usr/lib/i386-linux-gnu目录下面找到libgcc_s.so.1
进入/usr/lib目录:cd /usr/lib
建立新的链接:sudo ln –sv /lib/i386-linux-gnu/libgcc_s.co.1 libgcc_s.so。成功建立新的链接之后,问题解决。
- BitBlaze Vine和TEMU的安装
- Bitblaze环境搭建之TEMU/Tracecap的编译和安装
- Bitblaze环境搭建之vine的编译和安装
- 安装bitblaze的动态分析工具temu
- bitblaze安装--vine
- bitblaze中静态分析工具vine安装
- 用Bitblaze进行程序分析之二------TEMU的配置和使用
- 用Bitblaze进行程序分析之三------VINE的使用
- BitBlaze TEMU/Tracecap 编译心得
- BitBlaze TEMU/Tracecap 在64位Ubuntu 14.04 LTS上的编译
- BitBlaze(三) - 静态分析组件Vine
- BitBlaze(四) - 动态分析组件TEMU
- Temu 安装小结
- temu的使用
- qemu或temu的镜像配置和管理
- 我搭建temu的过程
- 关于BitBlaze的中文介绍
- 模仿vine实现android视频的可间断录制和播放[basic]
- 如何查看一个用户组下的所有用户
- Mvvm light 精解
- 高可用的实现——LVS
- eclispse错误
- 程序员技术练级攻略
- BitBlaze Vine和TEMU的安装
- ibatis学习(三)---ibatis与spring的整合
- Linux操作系统原理与应用(陈莉君)——学习笔记
- 3 ActionScript3.0中的正则表达式
- C++中友元
- vs2010安装AnkhSVN后不显示
- 如何隐藏ios设备上面的状态条
- 使用ngx_lua构建高并发应用(1)
- jQuery Ajax 实例 全解析