OpenFPGA 环境配置及问题解决

OpenFPGA 环境配置及问题解决


环境配置过程

git clone https://github.com/LNIS-Projects/OpenFPGA.git​

cd OpenFPGA/.github/workflows​
# Add ‘sudo’ before apt-get in script: install_depencies_build.sh​
source install_depencies_build.sh  # (install all depencies)​

# back to OpenFPGA
python3 –m pip install –r requirements.txt​
make all​

# During make, watch the error messages and see which package is missing, repeatly using  ‘sudo apt install XXX’ to install them like:​
Tcl.h:   sudo apt install tcl-dev​
readline:   sudo apt install readline-dev​

错误解决

编译错误

SIGSTKSZ Error
  • 原因:猜测是因换源不一导致的C编译工具链版本问题
  • 解决:将catch.hpp版本更新,并替换
  1. 下载
wget -O ~/Downloads/catch.hpp https://github.com/catchorg/Catch2/releases/download/v2.13.9/catch.hpp
  1. 替换该文件
cd {OpenFPGA_文件夹位置}/libs/EXTERNAL/libcatch/
mv catch.hpp catch.bak.hpp
mv ~/Downloads/catch.hpp ./
FATAL ERROR 关于TBB的相关问题
  • 原因:系统问题缺少头文件tbb_stddef.h
  • 解决:
wget -O ~/Downloads/tbb_stddef.h https://raw.githubusercontent.com/wjakob/tbb/9e219e24fe223b299783200f217e9d27790a87b0/include/tbb/tbb_stddef.h
sudo mv ~/Downloads/tbb_stddef.h /usr/include/tbb
  • 缺少头文件task_scheduler_init.h
wget -O ~/Downloads/task_scheduler_init.h https://raw.githubusercontent.com/wjakob/tbb/raw/master/include/tbb/task_scheduler_init.h
sudo mv ~/Downloads/task_scheduler_init.h /usr/include/tbb

找不到依赖

  • 统一问题:运行install_dependencies_build.sh时或pip install时出错或未运行
  • 解决:重新运行两步骤,如还有问题则单独安装
提示:
# 缺少ffi.h
sudo apt install libffi-dev
# 缺少tcl.h
sudo apt install tk tcl tk-dev tcl-dev
# 缺少readline
sudo apt install readline-dev libreadline6-dev

run-task 报错

查看log,目前观察最多的问题为 envYAML 包未安装

pip3 install envyaml

ModuleNotFoundError ‘prettytable’

运行 run_vtr_task.py 时,提示:ModuleNotFoundError: No module named ‘prettytable’
处理:

# 更新 pip
python -m pip install --upgrade pip
# 安装 PrettyTable包
pip install PrettyTable

脚本不可满足

ctags、qt5-default无可用候选 (no installation candidate)
解决:在大部分使用场景下,这两个包并不重要,可编辑install_dependencies_build.sh文件,删除ctags、qt5-default这两行

网络环境问题

包括:

  1. Connection refused 拒绝连接
  2. 443 SSL 无法建立
  3. clone failed 克隆失败

解决:

  1. 修改hosts
  2. 开加速器/VPN
  3. 使用手机流量的个人热点

运行时问题

Permission Denied | Can not find directory…

问题分析:在git clone或安装依赖时错误地使用 root 用户运行命令,导致个人用户无任何修改权限。
解决:在OpenFPGA根目录下

sudo chown -hR {用户名}:{用户组,一般同用户名} ./
# 将所有文件所有者改为个人用户
Yosys shell中,Show命令查看电路图 的时候,提示报错

问题:缺少点阵图形展示工具。
解决:可以试着运行 sudo apt-get install xdot

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值