ubuntu下 zsim + nvmain配置

编程入门 行业动态 更新时间:2024-10-06 22:30:20

<a href=https://www.elefans.com/category/jswz/34/1771209.html style=ubuntu下 zsim + nvmain配置"/>

ubuntu下 zsim + nvmain配置

内核版本

3.18.134

zsim+nvmain

下载地址
我是先按照

然后这个博客基本解决了大部分问题,我这里也列出我遇到的问题和解决办法

boost 1.59安装 :

下载地址
1.解压
2.解压后的目录里面打开终端

sudo ./bootstrap.sh 

遇到问题Unicode/ICU support for Boost.Regex?.. not found.
sudo apt-get install libicu-dev

3.配置完成后 ./b2 install 编译安装 (时间有点长,大概要5-10分钟)
(最好是完整安装 ./b2 --buildtype=complete install )

遇到问题
fatal eoor pyconfig.h No such file or directory
fatal error: bzlib.h: No such file or directory
sudo apt-get install libboost-all-dev
sudo apt-get install libbz2-dev

libconfig-1.7.2

下载地址
根据解压后的install文件安装
1.解压
2.到目录打开终端
3. $ ./configure
4. $ ./make
5. 用 $ make check 可以测试安装成功没,没报错就成功了
6.$ make install

hdf5

下载地址
1.解压
2.目录终端
3. ./configure
4. make

这里make会报错,需要到perform文件修改 zip_perf.c, 将 其中一句 像open (…,O_WRONLY | O_CREAT);的多加一个参数
变成 open (…, O_WRONLY O_CREAT, 0777); 再make

  1. make install
  2. make install-check检查安装完成
    安装成功会在目录 出现hdf5文件夹 里面有bin include lib三个文件

gcc4.8.5 g++4.85

第一步下载GCC G++

sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8

第二步设置版本

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/g++-4.8 100

zsim - nvmain

按照github配置env.sh不行,不知道为什么,按照

配置可以

#!/bin/sh
PINPATH=/home/***/SHMA-master/zsim-nvmain/pin_kit/
NVMAINPATH=/home/***/SHMA-master/zsim-nvmain/nvmain/
ZSIMPATH=/home/***/SHMA-master/zsim-nvmain/
BOOST=/usr/local
HDF5=/home/jyf/SHMA-master/hdf5-1.8.9-linux-x86_64-shared
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PINPATH/intel64/lib:$PINPATH/intel64/runtime:$PINPATH/intel64/lib:$PINPATH/intel64/lib-ext:$BOOST/lib:$HDF5/lib:/usr/local/gmp-4.3.2/lib:/usr/local/mpfr-2.4.2/lib:/usr/local/mpc-0.8.1/lib
INCLUDE=$INCLUDE:$HDF5/include
LIBRARY_PATH=$LIBRARY_PATH:$HDF5/lib
CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:$HDF5/include
export ZSIMPATH PINPATH NVMAINPATH LD_LIBRARY_PATH BOOST CPLUS_INCLUDE_PATH LIBRARY_PATH

执行命令

source env.sh
scons -j4

第二个命令是编译,出现各种报错

编译出错问题解决

1.fatal error: gelf.h: 没有那个文件或目录

解决办法

sudo apt-get install  libelf-dev

参考

2.build/opt/zsim.cpp:71:26: fatal error: glog/logging.h: 没有那个文件或目录

解决办法:安装glog

  • .下载源码
git clone 
  • .下载必要模块
sudo apt-get install autoconf automake libtool
  • .进入文件目录
./autogen.sh
./configure
make -j 24
sudo make install

参考

3.-e #define ZSIM_BUILDDATE 问题
解决办法 去掉SConstruct文件的 -e
原内容中

 if os.path.exists(".git"):env.Command(versionFile, allSrcs + [".git/index", "SConstruct"],'echo -e "#define ZSIM_BUILDDATE \\""`date`\\""\\\\n#define ZSIM_BUILDVERSION \\""`python misc/gitver.py`\\""" >>' + versionFile)else:env.Command(versionFile, allSrcs + ["SConstruct"],'echo  -e "#define ZSIM_BUILDDATE \\""`date`\\""\\\\n#define ZSIM_BUILDVERSION \\""no git repo\\""" >>' + versionFile)

去掉 -e

 if os.path.exists(".git"):env.Command(versionFile, allSrcs + [".git/index", "SConstruct"],'echo "#define ZSIM_BUILDDATE \\""`date`\\""\\\\n#define ZSIM_BUILDVERSION \\""`python misc/gitver.py`\\""" >>' + versionFile)else:env.Command(versionFile, allSrcs + ["SConstruct"],'echo   "#define ZSIM_BUILDDATE \\""`date`\\""\\\\n#define ZSIM_BUILDVERSION \\""no git repo\\""" >>' + versionFile)

再次编译软件

~/SHMA-master/zsim-nvmain$ source env.sh
~/SHMA-master/zsim-nvmain$ scons -j16

这几个问题解决之后就编译成功了!!!!!!!!!!!!!

scons: done building targets.

在bin下有这两个文件

运行问题解决

1

taya@taya-OMEN-by-HP-Laptop:~/SHMA-master/zsim-nvmain$ ./bin/zsim config/shma-static.cfg
Starting zsim, built 2018年 12月 06日 星期四 17:28:38 CST (rev no git repo)
[H] Creating global segment, 4096 MBs
[H] Global segment shmid = 8421425
[H] Deadlock detection ON
launchprocess 0
cmd:/473.astar/exe/astar_base.amd64-m64-gcc43-nn
cmd:BigLakes2048.cfg
/home/taya/SHMA-master/zsim-nvmain/pin_kit/intel64/bin/pinbin -follow_execv -tool_exit_timeout 1 -t /home/taya/SHMA-master/zsim-nvmain/bin/libzsim.so -config /home/taya/SHMA-master/zsim-nvmain/config/shma-static.cfg -outputDir /home/taya/SHMA-master/zsim-nvmain -shmid 8421425 -logToFile -procIdx 0 -- /473.astar/exe/astar_base.amd64-m64-gcc43-nn BigLakes2048.cfg 
Could not exec, killing child: Permission denied
[H] Panic on build/opt/zsim_harness.cpp:300: Could not exec /home/taya/SHMA-master/zsim-nvmain/pin_kit/intel64/bin/pinbin
[H] Child 26631 done
[H] Panic on build/opt/zsim_harness.cpp:117: Child issued a panic, killing simulation

这是因为没有授权给Pin
执行

chmod a+x $PINPATH/intel64(ia32)/bin/pinbin 

2

出现

[H] Creating global segment, 4096 MBs
[H] Global segment shmid = 5636114
[H] Deadlock detection ON
launchprocess 0
cmd:/473.astar/exe/astar_base.amd64-m64-gcc43-nn
cmd:BigLakes2048.cfg
/home/taya/SHMA-master/zsim-nvmain/pin_kit/intel64/bin/pinbin -injection child -follow_execv -tool_exit_timeout 1 -t /home/taya/SHMA-master/zsim-nvmain/bin/libzsim.so -config /home/taya/SHMA-master/zsim-nvmain/config/shma-static.cfg -outputDir /home/taya/SHMA-master/zsim-nvmain -shmid 5636114 -logToFile -procIdx 0 – /473.astar/exe/astar_base.amd64-m64-gcc43-nn BigLakes2048.cfg
/473.astar/exe/astar_base.amd64-m64-gcc43-nn : No such file or directory
[H] Child 7522 done
[H] All children done, exiting

这是因为我没有spec cpu2006所以需要修改shma-static.cfg文件最后的一段process= 修改成这样
simpoints 是作fastfoward的所以也要注释掉
之后运行

~/SHMA-master/zsim-nvmain$ ./bin/zsim config/shma-static.cfg

3

再次出现了问题

去查看libzsim.so文件

可以看到这是由于编译时候的动态连接出了问题,然后 每句话都有boost…很明显是boost安装出了问题,因为我一开始是普通安装的,这次我就按

./b2 --buildtype=complete install

完整安装
在zsim+nvmain那个文件下执行来删除原来zsim的编译文件

source env.sh
scons -c
scons -j16

编译通过,然后执行命令

./bin/zsim config/shma-static.cfg

成功了


so动态连接库问题

.html 如何定位连接库
关于SO动态连接库
几个学到的命令

更多推荐

ubuntu下 zsim + nvmain配置

本文发布于:2024-02-19 19:00:57,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1765513.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:ubuntu   zsim   nvmain

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!