关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
sed -i -e 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
换成阿里云的源
rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum clean all
yum makecache fast -y
安装Qflow,首先要安装graywolf、qrouter、magic、netgen等
http://opencircuitdesign.com/qflow/index.html
安装CMake
curl -L -o cmake-3.14.0-Linux-x86_64.sh https://cmake.org/files/v3.14/cmake-3.14.0-Linux-x86_64.sh
bash cmake-3.14.0-Linux-x86_64.sh --skip-license --prefix=/usr
安装G++7.3
yum install centos-release-scl -y
yum install devtoolset-7 -y
cat >> /etc/bashrc <<'EOF'
source /opt/rh/devtoolset-7/enable
EOF
source /opt/rh/devtoolset-7/enable
g++ --version
安装Python3、git
yum install -y python3 git
依赖包要求tcl 8.6、tk 8.6 ,先安装tcl,再安装tk
CentOS7安装tcl8.6.8
curl -L -o tcl8.6.8-src.tar.gz https://nchc.dl.sourceforge.net/project/tcl/Tcl/8.6.8/tcl8.6.8-src.tar.gz
tar xzvf tcl8.6.8-src.tar.gz -C /usr/local
cd /usr/local/tcl8.6.8/unix/
./configure
make -j $(nproc)
make install
ln -s /usr/local/tcl8.6.8/unix/tclsh /usr/local/bin/
ln -s /usr/local/lib/libtcl8.6.so /usr/lib64/libtcl8.6.so
CentOS7安装tk8.6.8
curl -L -o tk8.6.8-src.tar.gz https://prdownloads.sourceforge.net/tcl/tk8.6.8-src.tar.gz
tar xzvf tk8.6.8-src.tar.gz -C /usr/local
cd /usr/local/tk8.6.8/unix/
./configure
# 安装make依赖
yum install -y libX11-devel
make -j $(nproc)
make install
ln -s /usr/local/tk8.6.8/unix/tksh /usr/local/bin/
ln -s /usr/local/lib/libtk8.6.so /usr/lib64/libtk8.6.so
安装swig
# 下载源码
curl -L -o swig-4.0.2.tar.gz http://prdownloads.sourceforge.net/swig/swig-4.0.2.tar.gz
# 解压
tar xfz swig-4.0.2.tar.gz -C /usr/local
# 切换目录
cd /usr/local/swig-4.0.2
# 安装autogen的依赖
yum install -y automake
./autogen.sh
# 安装依赖,否则配置失败
yum install -y pcre-devel
./configure --prefix=/usr
make -j $(nproc)
make install
CentOS7安装OpenSTA,仿真验证工具(可选)
git clone https://hub.fastgit.xyz/The-OpenROAD-Project/OpenSTA /opt/opensta
cd /opt/opensta/
yum install -y bison flex
mkdir build
cd build
cmake ..
make -j $(nproc)
make install
CentOS7安装OpenTimer,静态时序分析工具
git clone -b dev https://hub.fastgit.xyz/OpenTimer/OpenTimer /opt/opentimer
cd /opt/opentimer
mkdir -p build
cd build
cmake ../
make -j $(nproc)
make install
安装iverilog
git clone https://hub.fastgit.xyz/steveicarus/iverilog
yum install -y gperf autoconf readline readline-devel bison flex
# yum install -y gcc-c++
cd iverilog
sh autoconf.sh
./configure
make -j $(nproc)
make install
安装yosys
# unzip yosys.zip
git clone https://hub.fastgit.xyz/YosysHQ/yosys
cd yosys/
make config-clang
yum install -y clang \
boost boost-build boost-devel readline readline-devel \
zlib-devel bison flex libffi libffi-devel libstdc++-static
# yum install -y tcl tcl-devel gcc python3
# export ABCURL=https://github.com/YosysHQ/abc
export ABCURL=https://hub.fastgit.xyz/YosysHQ/abc
make -j $(nproc)
make test
make install
安装magic
curl -L -o magic-8.3.308.tgz http://opencircuitdesign.com/magic/archive/magic-8.3.308.tgz
tar zxvf magic-8.3.308.tgz
cd magic-8.3.308
# yum install -y gcc
yum install -y python3 mesa-libGL-devel mesa-libGLU-devel cairo-devel
yum install -y git *stdc++*
git init
./configure
make
make install
安装netgen
curl -L -o netgen-1.5.221.tgz http://opencircuitdesign.com/netgen/archive/netgen-1.5.221.tgz
tar zxvf netgen-1.5.221.tgz
cd netgen-1.5.221/
yum install -y python3 m4
./configure
make
make install
安装qrouter
curl -L -o qrouter-1.4.85.tgz http://opencircuitdesign.com/qrouter/archive/qrouter-1.4.85.tgz
tar zxvf qrouter-1.4.85.tgz
cd qrouter-1.4.85/
yum install -y libXt-devel
./configure
make
make install
安装graywolf
# unzip graywolf.zip
git clone https://hub.fastgit.xyz/rubund/graywolf
cd graywolf/
# yum install -y cmake gcc-c++
yum install -y gsl gsl-devel
mkdir build
cd build
cmake ..
make
make install
安装qflow
curl -L -o qflow-1.4.98.tgz http://opencircuitdesign.com/qflow/archive/qflow-1.4.98.tgz
tar zxvf qflow-1.4.98.tgz
cd qflow-1.4.98/
./configure
make
make install
执行qflow
yum install -y python3-tkinter
qflow gui
如果报错:yosys: error while loading shared libraries: libtcl8.6.so: cannot open shared object file: No such file or directory
ln -s /usr/local/lib/libtcl8.6.so /usr/lib64/libtcl8.6.so
参考
http://opencircuitdesign.com/qflow/index.html
http://opencircuitdesign.com/magic/
http://opencircuitdesign.com/netgen
http://opencircuitdesign.com/qrouter
https://github.com/rubund/graywolf
网友留言: