赞
踩
OpenROAD官方教程使用的linux系统是CentOS7,但由于工作原因,需要在Ubuntu20.04上部署OpenROAD(实现自带的nangate45成功生成gcd即可),虽然使用的都是一样功能的库,但是因为库名不同,环境配置的过程也不一样。所以写篇文章记录下过程。
注:Ubuntu20.04自带了一些需要的库(或更高版本),所以有些库不需要配置。
安装编译环境一些常用的包,其中有gcc,g++,make等
sudo apt install build-essential
安装tcl
在对OpenROAD编译时,有些C代码头文件是导入了tcl.h,但是安装完的tcl库是存在于/usr/include/tcl8.6/下,所以会出现找不到tcl.h文件的情况,只要将tcl8.6下的头文件复制到/usr/include/下即可。除此之外,项目中需要libtcl8.5库文件,在运行时会报-ltcl8.5缺失,生成一个/usr/lib/x86_64-linux-gnu/libtcl8.6.so -> /usr/lib/x86_64-linux-gnu/libtcl8.5.so的软连接即可。解决库文件缺失的问题可参考Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法或者Ubuntu使用apt-file解决库或者文件缺失依赖
- sudo apt install tcl-dev
- sudo cp /usr/include/tcl8.6/*.h /usr/include/
- sudo ln -s /usr/lib/x86_64-linux-gnu/libtcl8.6.so /usr/lib/x86_64-linux-gnu/libtcl8.5.so
安装readline,bison,flex,ffi,cmake,boost,swig,klayout
sudo apt install libreadline6-dev bison flex libffi-dev cmake libboost-all-dev swig klayout
安装eigen3
sudo apt install libeigen3-dev
安装lemon
- wget http://lemon.cs.elte.hu/pub/sources/lemon-1.3.1.tar.gz
- tar zxvf lemon-1.3.1.tar.gz
- cd lemon-1.3.1
- mkdir build && cd build && cmake .. && make -j 64 && sudo make install
从github上CloneOpenROAD-flow仓库并编译。
- sudo apt install git
- git clone --recursive https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts.git
- cd OpenROAD-flow-scripts/
- ./build_openroad.sh --local
官方教程中的./setup_env.sh好像无效,可以使用source来配置环境变量。
- source setup_env.sh
-
- yosys -h
- openroad -h
- TritonRoute -h
-
- cd flow && make
最后会在flow/results/nangate45/gcd/下生成6_final.gds文件,可以使用klayout来查看。
klayout results/nangate45/gcd/6_final.gds
OpenROAD-flow官方教程https://openroad.readthedocs.io/en/latest/index.html
OpenROAD-flow源码https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts
yosys源码https://github.com/YosysHQ/yosys
OpenROAD源码https://github.com/The-OpenROAD-Project/OpenROAD
TritonRoute源码https://github.com/The-OpenROAD-Project/TritonRoute
Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法
Ubuntu使用apt-file解决库或者文件缺失依赖_AderStep-CSDN博客_libgthread
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。