Ubuntu 22.04 安装VCS Verdi 进行Verilog 仿真。仅为个人记录使用,资源失效请留言。

安装顺序:synopsysinstaller -> scl -> vcs/verdi 第一个是安装工具,第二个是许可证管理

1. 安装 installer+scl

我是把文件先全部下载到 download目录,把synopsysinstaller_v5.0压缩包解压,并进入目录。先运行.run文件,然后提示输入安装路径,默认回车在当下目录就行;完成后直接运行生成的setup.sh文件。

sudo ./SynopsysInstaller_v5.0.run   # 建议用Tab键补全,避免输入错误    直接回车安装在当前目录
./setup.sh   # 弹出安装界面  弹出之后可以先不管,先进行下一步

创建专用文件夹/home/synopsys:

sudo mkdir /home/synopsys
sudo chmod 777 /home/synopsys  # 添加权限

这时候就可以回到./setup.sh安装界面:

上面都保持默认即可,这个地方选择刚刚创建的目录:

2. 安装scl

还是刚刚的模式,回到最初安装脚本的文件夹运行/setup.sh ,继续弹出安装界面。

源选择scl文件夹的路径:

目的选择安装路径:

继续一路点击确认安装。

3. 安装vcs /verdi

一样的道理,回到最初安装脚本的文件夹运行/setup.sh ,继续弹出安装界面。

4. 生成许可证

在Windows下,双击运行scl_keygen.exe. 记得把Windows的defender关闭,不然报毒并删除文件。

需要填写这4项信息,HOST ID Daemon 和HOST ID Feature填写一样的,Port选择27000。

HOST ID Daemon 和HOST ID Feature获取方法:

在Ubuntu中运行:

hostname  # 对应第一张图
ifconfig  # 对应第二张图

你用的哪个网卡上网,就用哪个网卡的MAC地址,把冒号去掉然后填进去,点击generate。

打开生成licens文件,修改第二行,这个需要与虚拟机里面scl路径一致,不然license无效。修改好后把这个文件复制到共享文件中。这个文件最后需要放到这个“scl/2018.06/admin/license/”目录下,要与环境里面设置的路径一致。

打开bashrc文件,在最后面加上下面的代码,需要修改倒数第二行的host为实际值。

nano ~/.bashrc
export DVE_HOME=/home/synopsys/vcs/O-2018.09-SP2
export VCS_HOME=/home/synopsys/vcs/O-2018.09-SP2
export VCS_MX_HOME=/home/synopsys/vcs-mx/O-2018.09-SP2
export LD_LIBRARY_PATH=/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64
export VERDI_HOME=/home/synopsys/verdi/Verdi_O-2018.09-SP2
export SCL_HOME=/home/synopsys/scl/2018.06


#dve
PATH=$PATH:$VCS_HOME/gui/dve/bin
alias dve="dve"

#VCS
PATH=$PATH:$VCS_HOME/bin
alias vcs="vcs"

#VERDI
PATH=$PATH:$VERDI_HOME/bin
alias verdi="verdi"

#scl
PATH=$PATH:$SCL_HOME/linux64/bin
export VCS_ARCH_OVERRIDE=linux

#LICENCE
export LM_LICENSE_FILE=27000@localhost.localdomain  # 这里需要修改为实际值
alias lmg_synopsys="lmgrd -c /home/synopsys/scl/2018.06/admin/license/Synopsys.dat"

保存后,source 一下。

source ~/.bashrc

5. 激活

先使用以下命令设置开放端口:

firewall-cmd --zone=public --add-port=27000/tcp --permanent
firewall-cmd --reload

可能提示没有安装命令,那你自行安装即可。

然后在输入“lmg_synopsys”进行激活,这个每次启动虚拟机都需要这样操作一下。

lmg_synopsys

直接运行我碰到了这个问题,这里应该是缺少依赖库。输入以下命令进行安装:

sudo apt-get install lsb-core

继续运行lmg_synopsys又碰到了如下报错:

Can't make directory /usr/tmp/.flexlm, errno: 2(No such file or directory)

解决方式:

sudo mkdir -p /usr/tmp
sudo touch /usr/tmp/.flexlm

继续运行lmg_synopsys又报错:

2:23:47 (lmgrd) -----------------------------------------------
2:23:47 (lmgrd)   Please Note:
2:23:47 (lmgrd)
2:23:47 (lmgrd)   This log is intended for debug purposes only.
2:23:47 (lmgrd)   In order to capture accurate license
2:23:47 (lmgrd)   usage data into an organized repository,
2:23:47 (lmgrd)   please enable report logging. Use Macrovision's
2:23:47 (lmgrd)   software license administration  solution,
2:23:47 (lmgrd)   FLEXnet Manager, to  readily gain visibility
2:23:47 (lmgrd)   into license usage data and to create
2:23:47 (lmgrd)   insightful reports on critical information like
2:23:47 (lmgrd)   license availability and usage. FLEXnet Manager
2:23:47 (lmgrd)   can be fully automated to run these reports on
2:23:47 (lmgrd)   schedule and can be used to track license
2:23:47 (lmgrd)   servers and usage across a heterogeneous
2:23:47 (lmgrd)   network of servers including Windows NT, Linux
2:23:47 (lmgrd)   and UNIX. Contact Macrovision at
2:23:47 (lmgrd)   www.macrovision.com for more details on how to
2:23:47 (lmgrd)   obtain an evaluation copy of FLEXnet Manager
2:23:47 (lmgrd)   for your enterprise.
2:23:47 (lmgrd)
2:23:47 (lmgrd) -----------------------------------------------
2:23:47 (lmgrd)
2:23:47 (lmgrd)
2:23:47 (lmgrd) The license server manager (lmgrd) running as root:
2:23:47 (lmgrd)
This is a potential security problem
2:23:47 (lmgrd)
and is not recommended.
[root@localhost Desktop]#  2:23:47 (lmgrd) Failed to open the TCP port number in the license.

先不用管它,这里应该是之前运行激活命令导致端口被占用了。

继续运行lmg_synopsys又报错:

/home/synopsys/verdi/Verdi_O-2018.09-SP2/bin/verdi: 56: Syntax error: "(" unexpected

解决办法:

sudo dpkg-reconfigure dash

再运行:

verdi #尝试打开GUI界面

又报错:

/home/synopsys/verdi/Verdi_O-2018.09-SP2/platform/LINUXAMD64/bin/Novas: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory

解决办法:

sudo apt install libpng12-0

又报错:

自行添加apt源:

sudo add-apt-repository ppa:linuxuprising/libpng12
sudo apt-get install libpng12-0

最后一次运行verdi:

verdi &

成功打开GUI界面:

最后,重中之重,记得每次运行verdi和vcs之前,都需要激活一次:

lmg_synopsys

参考文章:

Synopsys EDA Tools安装和使用过程中出现的问题及解决方法 - 知乎 (zhihu.com)

ubuntu下,verdi语法错误Syntax error: “(“ unexpected_verdi error catch signal "abort-CSDN博客

ubuntu的verdi报错libpng12.so.0_ubuntu verdi libpng-CSDN博客

关于新版本Ubuntu不能安装libpng12-0的解决方案 - 禅元天道 - 博客园 (cnblogs.com)

百度网盘链接:synopsys软件安装,vcs verdi,centos ubuntu系统