资讯动态

Ubuntu 20.04虚拟机安装Cadence IC617四件套完整避坑指南

发布时间:2026/10/23 9:35:20 来源:尧图企业网站定制
简介这是一份面向集成电路设计与验证工程师的 Ubuntu 20.04 EDA 工具链安装指南内容围绕 Cadence IC617(HotFix)、Spectre18、Calibre19 与 XCELIUMMAIN_18 的部署覆盖系统准备、依赖库安装、许可证配置、环境变量设置和安装验证等环节。文档基于多篇实战教程整理针对 Ubuntu 20.04 的特殊性补充了 CPU 的 AVX2 指令集检查、libxp6 旧库安装、redhat-release 伪装等避坑要点并收录了 Cadence IC618、Calibre20、INCISIVE152 等参考安装文件便于读者对照使用。资源包仅含 1 个 docx 文档共约 3.08MB内容编排紧凑、步骤明确适合需要自行搭建模拟/数模混合仿真环境的读者参考。该资源已有 7687 人浏览学习对于缺少官方支持文档的 Ubuntu 用户而言是一份不错的实操参考。1. 为什么偏偏是 Ubuntu 20.04 上的 Cadence IC617我自己第一回在 Ubuntu 20.04 上装 Cadence IC617(HotFix) 时光一个./iscape.sh就折腾了半个下午报错信息既不是权限也不是磁盘而是缺一串听起来像史前遗物的 32 位库。这套 EDA 工具链的官方支持生命周期停留在 Ubuntu 16.04 甚至 CentOS 720.04 无论内核还是 glibc 都“先进”过头了老向导识别不出系统、启动脚本找不到 ksh、Calibre 打开就段错误——多数不是软件坏了是环境没铺平。这篇文章写给要在 Ubuntu 20.04 虚拟机里完成 IC617、Spectre18、Calibre19、XCELIUMMAIN_18 四件套安装的人我会把系统准备、依赖补齐、ISCape 安装和装完自检按实际动手顺序写清楚每个坑都标了现象和根治方法。2. 系统准备磁盘、虚拟机联网与 VMware Tools2.1 虚拟机参数与最小安装我一般在 VMware 里新建虚拟机Ubuntu 20.04 安装介质用 ISO 挂载。内存至少给 4GB磁盘建议 60GB 起步因为 IC617 加 Spectre18 加 Xcelium 一套下来轻松占掉 20GB。安装选项里选“最小安装”不需要下载第三方软件和媒体扩展。有一点容易被忽略安装向导会让你填主机名默认是ubuntu最好是改成有辨识度的名字比如eda-vm。后面装 License 和配置 hostname 对应关系时会省事很多。安装过程可以联网但不要勾选“安装时在线更新”避免安装器在下载更新的环节卡住。装完进系统后要做三件事关闭光盘开机引导避免 VM 每次启动都试图从 ISO 引导更新软件源安装 VMware Tools。执行更新前我习惯在 Software Updater 的 Settings 里把服务器改成 Other 里的 Best server这样能测到一个速度最接近本地的镜像然后sudo apt update sudo apt upgrade -ysudo apt update是刷新软件包索引sudo apt upgrade才是真正升级现有包。第一次升级时间会很长建议挂着做别的事。VM 如果开在桥接模式网络一般自然通如果是 NAT 模式也要确认能ping 8.8.8.8否则后续wget下依赖包必失败。2.2 共享文件夹把安装文件放进虚拟机Cadence 安装包体积大拷贝进虚拟磁盘会占用大量空间我后来采用了共享文件夹方案。在虚拟机关机状态下编辑虚拟机设置添加一个共享文件夹指向宿主机里存放全套安装文件的目录。这里必须强调路径要全英文不能有中文和空格否则 IScape 安装器会读取路径失败。启动进系统后共享目录自动挂在/mnt/hgfs/下面。如果没看到可以手动挂载ls /mnt/hgfs/ sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other -o nonemptyvmhgfs-fuse是较新 VMware Tools 提供的挂载工具allow_other允许普通用户访问共享目录。检查到共享目录里能看到安装包后再继续下面的安装。文件目录结构尽量保持英文比如CadenceInstall/IC617/、CadenceInstall/SPECTRE18/这样 IScape 不会因为路径编码问题报错。2.3 VMware Tools 安装解压到 Desktop 再执行在 VMware 菜单栏执行“虚拟机 → 安装 VMware Tools”虚拟机会挂载一张VMwareTools光盘。把里面的 tar 包解压到用户目录再以 root 跑安装脚本。我习惯先建个临时目录隔离mkdir -p ~/Desktop/tools sudo tar -zxvf /media/cdrom/VMwareTools-10.3.22-15902021.tar.gz -C ~/Desktop/tools/ cd ~/Desktop/tools/vmware-tools-distrib sudo ./vmware-install.pl解压参数-C指定目标目录-zxvf解 gzip 压缩的 tar 包。安装脚本执行后一路回车默认值即可脚本会重新编译内核模块。VMware Tools 装完之后建议重启一次它会负责优化显示分辨率和剪贴板共享同时提供/mnt/hgfs的驱动支持。网络共享盘在安装依赖和 IScape 时都靠它这一步不要跳过。3. 依赖库与环境变量装 Cadence 前的三小时体力活3.1 批量安装基础依赖Cadence 安装脚本和 License 守护进程依赖多种经典 shell 和运行库其中 ksh 和 csh 是硬性的。安装好它们之后再补 Java 8 运行环境——注意必须是 Java 8太新版本 Java 跑起来会有显示异常。还有 32 位的libxtst6、libxi6这两项是给老版 Virtuoso GUI 用的。sudo apt-get install -y ksh csh openjdk-8-jre openjdk-8-jdk xterm libncursesw5-dev libxtst6:i386 libxi6:i386 python sudo apt-get install -y libstdc6 lib32stdc6 sudo apt-get install -y net-tools sudo apt-get install -y xfonts-75dpi xfonts-100dpi每条命令的作用很明确第一行解决 shell 环境和 Java 8 GUIxterm是很多 EDA 工具默认终端libncursesw5-dev提供权限交互和菜单库。第二行补libstdc的 64 位和 32 位版本Spectre 和 Calibre 内部有 32 位模块。第三行的net-tools提供ifconfigLicense 服务器检查主机名时会用到。第四行的 75dpi、100dpi 字体包直接改善 Calibre GUI 的字体渲染否则字体全是锯齿。这组命令没有先后顺序依赖一次性全部执行通常也没问题唯一例外是openjdk-8-jdk在 20.04 早期版本需要先确认仓库里有如果没有就先执行apt install openjdk-8-jre-headless。3.2 手动安装 libxp6 和 multiarch-supportUbuntu 20.04 已经移除了libxp6这个老 X11 库而 Cadence 的旧库文件在运行时仍会查找它。直接apt是装不上的需要从 Debian 仓库下载 deb 包手装。先装multiarch-support再装libxp6顺序别反wget http://ftp.br.debian.org/debian/pool/main/g/glibc/multiarch-support_2.28-10_amd64.deb sudo dpkg -i multiarch-support_2.28-10_amd64.deb wget http://launchpadlibrarian.net/183708483/libxp6_1.0.2-2_amd64.deb sudo dpkg -i libxp6_1.0.2-2_amd64.debmultiarch-support是 glibc 的多架构支持包libxp6则提供 X 打印扩展库。dpkg -i安装本地 deb不检查网络依赖所以先把两个包都下完整再执行。如果wget太慢也可以手动在浏览器下载后放到共享目录再dpkg -i。3.3 Java 环境变量与 redhat-release 骗术Java 8 装完以后必须配置环境变量。用 root 编辑/etc/profile在文件末尾追加下面一段export JAVA_HOME/usr/lib/jvm/java-8-openjdk-amd64 export JRE_HOME$JAVA_HOME/jre export CLASSPATH$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH$JAVA_HOME/bin:$JRE_HOME/bin:$PATH保存后执行source /etc/profile使配置立即生效再敲java -version确认生效。JAVA_HOME的路径必须与系统里实际的 Java 安装位置一致你可以用ls /usr/lib/jvm/先确认目录名是java-8-openjdk-amd64还是带具体版本号的文件夹。下一个关键动作是“骗过”Cadence 安装器的系统识别。Cadence 安装向导会读取/etc/redhat-release判断是否红帽系系统Ubuntu 上没有这个文件需要手动创建并写入echo Red Hat Enterprise Linux release 6.12 | sudo tee /etc/redhat-release sudo chmod 777 /etc/redhat-releasechmod 777是为了让安装器在运行过程中能改写这个文件。注意如果你重新装系统比如从 Ubuntu 20.04 升级到不同内核这个文件会丢失或覆盖需要重新写。3.4 安装目录与软链接给老二进制指条路Cadence 和 Calibre 是两套完全不同的软件体系安装目录必须独立。Cadence 放/opt/cadenceCalibre 放/opt/mentorLicense 单独建目录sudo mkdir -p /opt/cadence/ sudo mkdir -p /opt/mentor/Calibre2019 sudo mkdir -p /opt/mentor/license sudo mkdir -p /usr/tmp sudo chmod -R 777 /usr/tmp/老版 EDA 工具运行时会在/usr/tmp创建临时文件权限不足会直接白屏退出。chmod -R 777是最省心的做法测试环境够用。接下来建立软链接覆盖几个 Cadence 二进制默认查找的路径sudo ln -s /usr/bin/mawk /bin/awk sudo ln -s /usr/bin/basename /bin/basename sudo ln -s /lib/x86_64-linux-gnu/libncursesw.so.5.9 /lib/libtermcap.so.2 cd /lib/x86_64-linux-gnu/ sudo ln -s libcrypto.so.1.1 libcrypto.so.6为什么会有这种硬编码路径因为 IC617 里部分启动脚本和可执行文件写死了/bin/awk、/lib/libtermcap.so.2在 RHEL 6 时代它们都存在但 Ubuntu 20.04 把 awk 放在/usr/bin/awk把 ncurses 库放在了/lib/x86_64-linux-gnu/。软链接让你不用改程序只要把旧路径指到新文件即可。libcrypto.so.6同理Spectre 启动时会强制链接该版本号的 OpenSSL 库这里也把 1.1 兼容过去。4. 用 IScape 装 IC617 HotFix、Spectre18、Calibre19 和 XCELIUMMAIN_184.1 IScape 环境直接在共享文件夹里运行安装器Cadence 官方安装器叫 IScape它本身是一个 Java 应用不需要拷贝进虚拟机在共享文件夹里直接运行即可。安装器路径通常在iscape/bin/ised或iscape.sh我用的版本是 IScape04.23-s010cd /mnt/hgfs/CadenceInstall/IScape04.23-s010lnx86/iscape.04.23-s010/bin sudo ./iscape.sh这里的sudo是必需的因为后续安装动作要向/opt写入。IScape 启动后是一个图形向导左侧是产品列表右侧是安装步骤。如果启动时提示权限错误或 Java 版本不对先检查java -version是否还在指向 Java 8IScape 对 Java 11 的支持并不完善。4.2 IC617 HotFix先装 HotFix再加 Base CD在 IScape 里选中 IC617我第一步装的是 IC617HotFix然后再添加 Base CD。这里有个关键选择安装类型选择第 2 项Extract/Install 到新目录后续提示是否使用默认 OA 路径时选n并手动输入/opt/cadence/IC617/oa_v22.50.043记住这个路径它是 OpenAccess 库的标准位置。后面配置OA_HOME时必须用它。其余步骤一路按确认键即可安装器会把可执行文件、库文件和 OA 支持库全部铺到/opt/cadence/IC617/。HotFix 装完后ISCape 会主动提醒你添加 Base CD 路径这时把安装包里的 Base 版目录指给它它是 IC617 的完整底层库。这里最容易犯的错是把 HotFix 当成完整版直接启动实际情况是缺了 Base 包的 Virtuoso 启动时会报找不到libcds_memif.so这类错误。4.3 Spectre18 与 XCELIUMMAIN_18仿真和数模混仿的安装Spectre18 其实就是以前 MMSIM 的替代产品用于模拟电路仿真。在 IScape 里选 Spectre18 并安装到独立目录我习惯建/opt/cadence/SPECTRE18。安装过程比 IC617 简单不需要 Base CD进度条跑完就算成功。安装完成后务必找出bin目录并加入 PATH比如export PATH/opt/cadence/SPECTRE18/bin:$PATHXCELIUMMAIN_18 是原来 INCISIVE 改名后的数模混仿平台。它的安装包内部还带着xrun、xcellium等命令。在 IScape 里选 XCELIUMMAIN_18推荐安装到/opt/cadence/XCELIUMMAIN18。这个工具不像 IC617 那样强依赖 32 位库但它启动时会通过LD_LIBRARY_PATH查找libvcsi.so之类运行库所以配置环境变量时要一起加。4.4 Calibre19独立目录与 AVX2 门槛Calibre 属于另一个软件流必须安装到/opt/mentor/Calibre2019和 Cadence 目录分开。它的 License 目录也独立为/opt/mentor/license。在 IScape 里选 Calibre19安装路径指到/opt/mentor/Calibre2019。安装 Calibre19 前先确认 CPU 是否支持 AVX2 指令集。可以用宿主机上的 CPU-Z 查或直接在虚拟机里执行grep -o avx2 /proc/cpuinfo | head -1如果输出为空说明这代 CPU 不支持 AVX2。Calibre19 的核心计算库默认编译了 AVX2 指令在不支持的 CPU 上即使装完也会一启动就报 Illegal instruction 或直接闪退。解决的方法是换一台支持 AVX2 的物理机再跑。这不是配置参数能绕开的。Calibre 安装之前要把 License 文件放到/opt/mentor/license/下并确保环境变量指向它export MGC_HOME/opt/mentor/Calibre2019 export MGLS_LICENSE_FILE/opt/mentor/license/license.datMGLS_LICENSE_FILE是 Mentor 工具定义的环境变量。注意它不叫LM_LICENSE_FILE有些教程混用会导致 Calibre 软件起来后显示不出 License 路径。5. 避坑与常见问题从启动崩溃到 License 报错5.1 Calibre 打开就退出先查 AVX2现象Calibre19 安装时一切正常但双击或命令行启动calibre -gui窗口一闪就没了终端输出Illegal instruction (core dumped)。原因Calibre19 的二进制默认启用了 AVX2 指令集你的 CPU 不支持该指令执行到对应代码段直接触发非法指令异常。解决安装前用grep avx2 /proc/cpuinfo确认 CPU 能力如果没有 AVX2 就不要在这台机器上装 Calibre19要么换新机器要么把 Calibre 换成较老版本。若机器支持但仍旧闪退检查是不是运行了旧版本内核造成 CPU 特性屏蔽重启进入新内核再看一遍。5.2 Virtuoso 启动报缺少 32 位库现象执行virtuoso 后提示类似error while loading shared libraries: libXft.so.2: cannot open shared object file。原因IC617 部分组件仍然是 32 位编译系统缺少 32 位 X11 库。20.04 默认不会预装libxtst6:i386和libxi6:i386这类 multilib 包。解决补装命令在第 3.1 节已经给出重点是一定要带:i386后缀。装完后用ldd检查具体缺少的库例如ldd /opt/cadence/IC617/tools/dfII/bin/virtuoso | grep not found把所有not found标记的库按大小端搜索对应的:i386或:amd64包补上。这个过程会带出libjpeg62:i386、libxinerama1:i386等连带依赖耐心装完再启动。5.3 License 连不上Python 和 net-tools 没装现象Virtuoso 或 Calibre 启动时提示无法连接到 License 服务器或弹出 “invalid host” 对话框。原因License 守护进程要读取系统主机名和网络接口信息。如果系统里没有python这里的 python 指 python2没有ifconfigLicense 服务会起不来或者工具无法绑定 license hostname。解决确保python指向旧版 Python20.04 自带的是 Python3但老 License 脚本只认python命令以及安装net-tools。如果启动后仍找不到 license用lmstat -a查看服务状态重点确认/etc/hosts里的主机名和hostnamectl输出一致。类目里最隐蔽的问题是 License 文件里的 hostname 写的是localhost.localdomain但新装系统主机名是eda-vm不匹配就直接握手失败。5.4 字体乱得没法看xfonts-75dpi 和 100dpi现象Calibre GUI 启动后菜单和版图窗口字体全部是锯齿状文字挤压重叠几乎不可读。原因软件调用 X 字体服务系统没有装点阵字体导致字体渲染回退到最小字体。解决安装xfonts-75dpi和xfonts-100dpi这两个包内部包含 Calibre 界面常用的 75 和 100 DPI 点阵字体。安装后必须重启系统或注销重进让 X 字体缓存重建。如果重启后仍乱清一下字体缓存sudo fc-cache -f sudo mkfontscalefc-cache -f会强制刷新字体缓存mkfontscale是为 X 字体目录生成索引。这个步骤在每次新安装 EDA 工具后我都会习惯性跑一次。6. 装完验证从终端启动到画出第一个反相器所有工具安装完不代表能用我会强制自己走一遍冒烟验证先检查环境变量是否全部在中再逐个启动。第一步用which确认可执行文件都被 PATH 覆盖which virtuoso spectre calibre xrun如果某个命令找不到优先查安装目录下bin是否写进 PATH。IC617 的启动口号是virtuoso但它的实际路径在/opt/cadence/IC617/tools/dfII/bin/virtuosoSpectre 是/opt/cadence/SPECTRE18/bin/spectreCalibre 是/opt/mentor/Calibre2019/bin/calibreXcelium 是/opt/cadence/XCELIUMMAIN18/tools/bin/xrun。第二步用无图形模式测启动日志防止 GUI 掩盖库缺失virtuoso -nograph -log /tmp/vlog.log这条命令会以文本模式执行 Virtuoso启动过程输出全部写入/tmp/vlog.log。我一般用tail -f /tmp/vlog.log实时看如果最后出现Loading completed或Starting GUI说明库和 License 都正常如果卡在某行去查询对应关键字。图形界面模式下新建一个 Library连接工艺文件后随便放一个反相器原理图保存退出才能算完整跑通。第三步验证 Spectre 版本和 Calibre 图形界面spectre -V calibre -gui spectre -V打印版本号正常显示就代表仿真引擎可用calibre -gui能弹出窗口并显示 License 信息则验证平台正常。最后写一个几行 Verilog 文件用xrun跑一遍混仿流程我用的是最小化测试模块module top(input a, output y); assign y ~a; endmodulexrun -q top.v看到TOOL: xrun和SIMULATION COMPLETE提示整个工具链就跑通了。从那以后我每次装完 EDA 环境都强制自己把这四个命令走一遍——宁可多用二十分钟也不等到布线阶段才发现 License 是坏的。这套检查顺序帮我挡过好几次“装完好像没装”的尴尬希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑