前言

由于各种各样的原因,很多同学都在自己的Windows机器上安装一个Linux虚拟机进行一些IC设计。但是虚拟磁盘空间只增不减,导致同学们的虚拟机直接占满整个分区。微软的Windows Sub Linux(WSL)则可以避免这种情况,且WSL可以视为一个Windows程序,可以使用宿主机的全部资源,文件共享也很方便。


提示:以下是本篇文章正文内容,下面案例可供参考

一、安装WSL

安装步骤参考微软官方文档https://docs.microsoft.com/zh-cn/windows/wsl/install-manual

1.启用适用于 Linux 的 Windows 子系统

需要在“Windows功能”里先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。然后重启电脑。
在这里插入图片描述

2.安装所选的 Linux 分发

在微软商店搜索Ubuntu,选择Ubuntu 18.04.5安装。
在这里插入图片描述
或点击以下链接下载
Ubuntu 18.04.5

3.检查WSL版本

使用power shell输入以下命令

wsl -l -v

在这里插入图片描述
要确保此时的VERSION为1,也就是安装WSL1,不能安装WSL2。因为WSL2本质上还是虚拟机,虚拟磁盘问题依然存在。

二、安装前准备

1.将WSL迁移到其他盘

迁移可以参考这篇文章WSL迁移教程
利用这些迁移工具可以很方便地将WSL进行打包移植,比直接拷贝虚拟机方便多了。

2.更换源

将系统自带源备份

sudo mv /etc/apt/sources.list /etc/apt/sourses.list.bak

创建新的sources.list

sudo vi /etc/apt/sources.list

将以下文本复制进去

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

注意18.04的代号为bionic,不同版本的ubuntu代号也不一样,需要区分。

最后执行

sudo apt update

3.安装图形界面

3.1 Windows中的操作

首先下载安装VcXsrv
运行XLaunch,一路next就可以。但是每次电脑开机都要重新运行,可以利用ps1脚本使其开机自启。

3.2 WSL中的操作

先在WSL中安装xfce4

sudo apt-get install xfce4

然后将display设置添加到环境变量中

echo export DISPLAY=:0.0 >> ~/.bashrc

还需要

source ~/.bashrc

4.修改PATH

参考移除Windows PATH

WSL的PATH会包含Windows的PATH,Windows的PATH路径会包含空格等字符,这在Linux中是不允许的。
在WSL中执行

echo $PATH

在这里插入图片描述
创建文件

sudo vi /etc/wsl.conf

添加以下文本

[interop]
appendWindowsPath = false

然后在powershell中执行

wsl --terminate Ubuntu-18.04

再启动WSL并echo $PATH可以发现环境变量已经正常。
在这里插入图片描述

5.安装必要依赖

添加32位包支持

sudo dpkg --add-architecture i386
sudo apt install ksh csh
sudo apt install xterm
sudo apt install openjdk-8-jdk
sudo apt install libxi6:i386 lib32stdc++6 libncursesw5-dev libxtst6:i386 lib32ncurses5

安装 gcc,在编译Verilog和VerilogA时需要

sudo apt install gcc g++
sudo apt install gcc-multilib build-essential

三、安装

参考https://www.yisu.com/zixun/539675.html

创建安装目录

sudo mkdir /opt/cadence
sudo mkdir /opt/cadence/IC618
sudo mkdir /opt/cadence/SPECTRE181
sudo mkdir /opt/cadence/iscape
sudo mkdir /opt/cadence/license

拷贝文件

sudo cp /mnt/g/IC618-SPECTRE18-CALIBRE2019/IC618.tar.gz /opt/
sudo cp /mnt/g/IC618-SPECTRE18-CALIBRE2019/SPECTRE181.tar.gz /opt/
sudo cp /mnt/g/IC618-SPECTRE18-CALIBRE2019/mentor.tar.gz /opt/
sudo cp -r /mnt/g/IC618-SPECTRE18-CALIBRE2019/patch /opt/cadence

解压

cd /opt
sudo tar -xzvf IC618.tar.gz
sudo tar -xzvf SPECTRE181.tar.gz
sudo tar -xzvf mentor.tar.gz

1.进行安装

cd IC06.18.000_lnx86.Base/CDROM1
sudo ./SETUP.SH

安装时选择如下
在这里插入图片描述

2.安装qemu

安装完成进行patch

cd /opt/cadence/patch
sudo ./1patch.sh ../IC618/

此时报错如下
在这里插入图片描述
这是因为默认shell不支持32位程序,需安装qemu并设置binfmt。
安装qemu

sudo apt install qemu-user-static

设置binfmt

sudo update-binfmts --install i386 /usr/bin/qemu-i386-static --magic '\x7fELF\x01\x01\x01\x03\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x03\x00\x01\x00\x00\x00' --mask '\xff\xff\xff\xff\xff\xff\xff\xfc\xff\xff\xff\xff\xff\xff\xff\xff\xf8\xff\xff\xff\xff\xff\xff\xff'
sudo service binfmt-support start

3.再次进行patch

sudo ./1patch.sh ../IC618/
sudo ./1patch.sh ../SPECTRE181/

生成license前,需要将cdslicgen.py倒数几行中的‘wb’改为‘w’

生成licnese并复制到指定文件夹中

sudo python3 cdslicgen.py
sudo cp license.dat /opt/cadence/license/

编辑环境变量,具体可参考我的其他文章

vi ~/.bashrc
source ~/.bashrc

4.完成

输入virtuoso启动,duang~
在这里插入图片描述

总结

几年前就安装过,最近疫情在家折腾并记录一下。印象中calibre没法直接安装,应该是因为wsl没有完整的linux内核。先更新到这里,calibre的安装有机会后续再更新。在使用中有什么bug也会在这里更新,有什么不妥的地方欢迎各位大佬指正。

Logo

更多推荐