gem5的安装编译及测试运行

便捷安装参考:https://blog.csdn.net/u012822903/article/details/62216669

  1. Ubuntu16.04下安装gem5相关的各类软件库
sudo apt install mercurial scons swig gcc m4 python python-dev libgoogle-perftools-dev g++ libprotobuf-dev

可能还要安装编译环境(我没用上下面的):

sudo apt-get install build-essential

2.下载gem5源码

3.编译gem5的ARM架构

scons build/ARM/gem5.opt

4.运行helloworld测试

build/ARM/gem5.opt configs/example/se.py -c tests/test-progs/hello/bin/arm/linux/hello

运行打印出hello world即成功。


以下是旧的安装方法:

gem5的安装测试终于通过了,先将方法分享如下:

主要参考:http://hi.baidu.com/dropcrab/item/25edaadf19cea7e6b3f77798

gem5的官网的http://www.m5sim.org/Main_Page

一、准备阶段

安装gem5需要的环境有:gem5-stable,SCons,SWIG,zlib,m4

g++: 使用g++ 4.5版本,不要使用4.6,否则会出现编译无法通过!!(必要的环境)

python:版本2.4或更高[一般系统自带](必要环境)

以上软件包来源及版本:

1、gem5

到http://www.m5sim.org/Download下载stable版本源代码包。下载是个tar.bz2文件,解压用tar -xjf命令

2、SCons(注意是scons-local版本。没研究过为什么用这个,直接参考他人教程使用的)

http://sourceforge.net/projects/scons/files/ (也可直接百度下载这文件)

这里我使用的是scons-local-2.2.0

3、SWIG

版本1.3.34。注意:不要太高的版本,否则需要Perl支持。

http://www.swig.org/

4、zlib:最近的版本

http://www.zlib.net/

这里我使用的是zlib-1.2.7

5、m4:宏处理器。

http://www.gnu.org/software/m4/

这里我使用的是m4-1.4.16

备注:以上软件可以直接百度下载

二、安装阶段

假设将这些下载的文件放在用户主目录 gem5 下面。

编译gem5之前必须先安装这些必要的文件包。每个包里都有一个install文件说明了安装了方法,安装过程如下:

1、解压gem5源文件:

tar -xjf gem5-stable-1.tar.bz2

假设将gem5解压后的文件夹重命名为:gem5-stable

2、安装zlib:

解压下载的压缩包:

tar -xzvf zlib-1.2.7.tar.gz

进入解压之后的文件夹 zlib-1.2.7

cd zlib-1.2.7

执行命令:

./configure

sudo make install

3、安装SWIG:(注意版本!)

解压下载的压缩包:

tar -xzvf swig-1.3.34.tar.gz

进入解压后的文件夹:

cd swig-1.3.34

执行命令:

./configure

make

sudo make install

4、安装M4:

解压下载的压缩包:

tar -xzvf m4-latest.tar.gz

进入解压之后的文件夹 m4-1.4.16

cd m4-1.4.16

执行命令:

./configure

make

sudo make install

5、安装scons:

Scons的安装很简单,只需要将scons-local-2.2.0.tar.gz解压

tar -xzvf scons-local-2.2.0.tar.gz

将解压后的文件全部拷贝到gem5-stable中,得到结果如下图:

说明:其实将scons拷贝到gem5-stable中后,并没有build,parser.out,parsetab.py等文件,需要编译gem5后才有
这里写图片描述

6、编译:

进入gem5-stable文件夹:

cd gem5-stable

执行:

python scons.py build/想要编译的体系结构/m5.

指定编译的选项,及目标文件,例如:

python scons.py build/ARM/gem5.opt (编译大概需要20分钟左右,执行完后才有上图中的所有内容)

 7、额外说明

感觉python scons.py就相当于上面的scons,安装python后,.py文件可以直接执行)

另外,这里的ALPHA应该是ARM,下面都说是ARM)

gem5支持的平台有alpha/arm/mips/power/sparc/x86/,build/ALPHA不光说明输出目录,还指定了目标平台)

使用python scons.py build/ALPHA/m5.opt编译出来的,在后面的测试中

build/ARM/m5.opt configs/example/se.py -c tests/test-progs/hello/bin/alpha/linux/hello

tests/test-progs/hello/bin目录下还有arm,mips等目录,执行arm/linux/hello会说平台错误)

三、测试阶段

se模式下执行hello测试程序。
执行命令:

build/ARM/m5.opt configs/example/se.py -c tests/test-progs/hello/bin/arm/linux/hello

部分输出:

**** REAL SIMULATION ****

info: Entering event queue @ 0.  Starting simulation...

Hello world!

到此,安装测试成功!!

通过实验,以上方法可行!

你可能感兴趣的:(gem5,gem5学习与分享)