GemU安装日志

来源:互联网 发布:双11数据作假 编辑:程序博客网 时间:2024/06/08 17:36

GemU
An edited version of Gem5 with DVS, Fault-injection, and Power modeling
地址:https://github.com/rsivasundaram/GemU

事先安装软件如下:
gcc v4.8.2
Python v2.7.6
Scons v2.3.0
SWIG v2.0.11
zlib v1.2.8
protobuf v2.5.0
python-docutils v0.11-3

To build gem5, you will need the following software:
g++version 4.3 or newer.
Python, version 2.4 - 2.7 (we don’t support Python 3.X). gem5 links in the Python interpreter, so you need the Python header files and shared library (e.g., /usr/lib/libpython2.4.so) in addition to the interpreter executable. These may or may not be installed by default. For example, on Debian/Ubuntu, you need the “python-dev” package in addition to the “python” package. If you need a newer or different Python installation but can’t or don’t want to upgrade the default Python on your system, see http://www.gem5.org/Using_a_non-default_Python_installation
SCons, version 0.98.1 or newer. SCons is a powerful replacement for make. If you don’t have administrator privileges on your machine, you can use the “scons-local” package to install scons in your m5 directory, or install SCons in your home directory using the ‘–prefix=’ option.
SWIG, version 1.3.34 or newer
zlib, any recent version. For Debian/Ubuntu, you will need the “zlib-dev” or
“zlib1g-dev” package to get the zlib.h header file as well as the library
itself.
m4, the macro processor.

其中,gcc、python已安装。

sudo apt-get install sconssudo apt-get install swigsudo apt-get install m4

-安装zlib
其中zlib需要在http://www.zlib.net/下载zlib的最新版,解压并安装

tar -zxvf zlib-1.2.8.tar.gzcd zlib-1.2.8./configuremakesudo make install

-安装python-dev
根据http://blog.csdn.net/qianlong4526888/article/details/8233643安装python-dev

sudo apt-get install python-dev

-安装protobuf
根据http://www.w2bc.com/Article/18707需要另外安装protobuf
根据http://blog.csdn.net/allenlinrui/article/details/10098809安装protobuf
Goodle code无法下载,从网盘http://pan.baidu.com/s/1pJlZubT下载

tar -xvf protobuf-2.5.0.tar.gzmakemake checksudo make install

-安装GemU
参考“GemU-master/README.md”,进入GemU所在文件夹,安装

cd /home/zoe/desk/GemU-masterscons build/ARM/gem5.opt

//运行该指令,出现“Package protobuf was not found in the pkg-config search path.”
//将protobuf文件夹中的protobuf.pc拷贝到pkgconfig文件夹
//参照http://cgwxyz.blog.163.com/blog/static/262806020105307929424/

cd /usr/lib/pkgconfigsudo cp -v /home/zoe/desk/protobuf-2.5.0/protobuf.pc ./

ls //可以看见目录下已有该pkg
回到GemU所在文件夹,重新安装GemU

cd /home/zoe/desk/GemU-masterscons build/ARM/gem5.opt

失败

按照http://www.m5sim.org/Compiling_M5下载原Gem5尝试安装

-安装mercurial-3.3.3
点击进入http://mercurial.selenic.com/下载安装Mercurial

tar -zxvf mercurial-3.3.3.tar.gzcd mercurial-3.3.3makesudo make install

//abort: couldn’t generate documentation: docutils module is missing please install python-docutils or
//see http://docutils.sourceforge.net/

-安装python-docutils

sudo apt-get install python-docutilssudo make all

//出现error如下
//File “/usr/lib/python2.7/dist-packages/docutils/frontend.py”, line 220, in make_paths_absolute
// base_path = os.getcwdu() # type(base_path) == unicode
//UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe6 in position 10: ordinal not in range(128)
根据http://www.cnblogs.com/QuLory/p/3615584.html修改文件

cd /usr/lib/python2.7/dist-packages/docutilssudo chown zoe:zoe ./ -Rvim frontend.py

//按键‘I’进入编辑模式
//修改对应行import sys为

import sysreload(sys)sys.setdefaultencoding('utf8')

//输入’:wq’保存退出
回到原文件夹,执行sudo make all仍然出错
根据http://blog.163.com/bobile45@126/blog/static/960619922013424114441366/
//修改文件222行

#orinal#base_path = os.getcwdu();base_path = unicode(os.getcwdu(), "utf-8");

保存并退出,执行仍然出错
修改/usr/lib/python2.7/site.py文件
//首行插入

import sysreload(sys)sys.setdefaultencoding('utf8')

//第495行if0改为if1
保存并退出,执行仍然出错
根据http://www.linuxidc.com/Linux/2014-03/98307.htm修改/usr/lib/python2.7/sitecustomize.py文件

cd /usr/lib/python2.7sudo vim sitecustomize.py

//首行插入

# encoding = utf-8import sysreload(sys)sys.setdefaultencoding('utf8')

保存并退出,执行仍然出错
放弃安装mercurial-3.3.3

-安装GemU
根据GemU-master中README.md文件,安装GemU

cd /home/zoe/desk/GemU-masterscons build/ARM/gem5.opt

//当前仅支持ARM结构
根据错误信息,新建文件夹/ram/gem5,将GemU中文件全部拷入该文件夹,将文件夹从当前位置移到/home目录下

mv -t /home ramcd /home/ram/gem5scons build/ARM/gem5.opt

//scons: done building targets. 成功

0 0
原创粉丝点击