这是我在跑AutoSoC功能测试时遇到的一些错误即解决方法,仅供参考,具体以自己仿真情况为准。
1.AutoSoC开源资源及相关文档
AutoSoC官网里面可以找到项目介绍以及快速入门方法
2. 安装带有Xcelium的虚拟机
虚拟机资源以及教程:https://mp.weixin.qq.com/s/N-kAz2fEbNBKHlbKm4XM4w
3. 添加 环境变量 ($LD_LIBRARY_PATH )
在使用Xcelium进行仿真前,需要先设置环境变量,否则执行makefile脚本命令会报错。
设置方法:
在终端输入命令:
vim ~/.bashrc
进入.bashrc,添加环境变量如下:
export LD LIBRARY PATHO=$(LD LIBRARY PATHO}:/usr/Cadence/xrun/tools/lib
4. centos编译内核找不到gelf.h gelf.h:No such file or directory
上面安装的虚拟机缺少这个库,在进行AutoSoC平台make sim仿真时可能会出现这个错误:
问题:centos编译内核找不到gelf.h gelf.h:No such file or directory
原因:缺少gelf.h这个文件。使用f ind / usr / include- name" gelf. h"命令查找改文件,确实是这样。
解决方法:安装libelf-dev这个包,使用命令:
yum -y install elfutils-libelf-devel
若需要root权限,添加sudo:
sudo yum -y install elfutils-libelf-devel
安装libelf-dev包后,即可解决问题
参考:
编译kpatch,提示gelf.h: No such file or directory-编程语言-CSDN问答
gelf.h: No such file or directory · Issue #20 · sslab-gatech/opensgx (github.com)
5. 服务器上打不开gvim GUI界面
错误原因:Xmanager安装路径带中文
解决办法:重装Xmanager,安装路径无中文即可
6. 安装交叉编译工具
交叉编译器是在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码。
使用交叉编译工具链,可以编译自己的C代码并在各种OpenRISC提供的CPU上执行。or1k-elf 工具链安装说明参考:or1k-elf toolchain (newlib port for OpenRISC)
这里采用下载文件解压缩方式安装,也可通过git命令安装,见说明文档。
安装方法:
- 下载压缩包(二选一即可)
GCC 4.9.2, Binutils 2.26, Newlib 2.3.0 (+or1k backports), GDB 7.11
GCC 5.2.0, Binutils 2.26, Newlib 2.3.0 (+or1k backports), GDB 7.11 - 通过共享文件夹将压缩文件上传至虚拟机 /opt 目录下(建议此目录)
- 解压压缩包,命令为
tar -xzvf
- 同上,添加环境变量
export PATH=/opt/toolchains/or1k-elf/bin:${PATH}
7. can't find ./libdrivers/libdrivers.a
问题:在SoftwareBaremetalbsp目录下,执行makefile脚本命令make all
可能会报错:找不到./libdrivers/libdrivers.a
解决方法:将静态库生成地址去掉,默认为当前目录即可
LIB_OUTPUT =libdrivers.a
然后将目录改回,仿真又可以通过了(有点玄,仅供参考?)