由于学习的需要,研究了两天在Linux环境下安装Questasim的流程,总算是成功了。记录一下安装流程,以便后续可能还会用到。
首先感谢这篇博文《在CentOS8下Questasim_10.7c的安装及Crack》的博主,安装方法几乎都来源于此。使用到的软件主要为:CentOS7-Minimal,QuestaSim10.7c-Linux64。
一、下载相关安装包
CentOS7的安装包我是从如下网址中获取的:http://mirrors.ustc.edu.cn/centos/7.9.2009/isos/x86_64/
QuestaSim的安装包和相关材料,可以通过如下的网盘链接获得:https://pan.baidu.com/s/1suBsv_QVoiyqQtY5rSltHg?pwd=plya 提取码:plya
二、安装并配置操作系统
2.1 虚拟机的安装和联网
安装这一步应该没有什么好说的,整体来说都比较简单,网上的相关教程也非常多。
在进行下面的操作之前,首先先对CentOS7进行联网。首先修改网络配置,输入命令:vi /etc/sysconfig/network-scripts/ifcfg-ens33
,该命令会打开一个脚本,将最后一行的ONBOOT=no改为ONBOOT=yes,保存并退出。输入命令:systemctl restart network.service
重启网络服务。这样虚拟机应该就能使用网络服务了。可以使用命令:ping www.baidu.com
进行检查——如果能ping通,则虚拟机能够联网。
2.2 安装图形化界面
首先先进入root用户,来避免权限问题。
- 安装X Window System
命令如下:yum groupinstall "X Window System"
。中途会出现两个选项,都选择y即可。安装完成后出现Complete!字样表示安装完成。 - 安装图形界面软件GNOME Desktop
命令如下:yum groupinstall "GNOME Desktop"
。中途会出现一个选项,选择y即可。安装完成后出现Complete!字样表示安装完成。 - 进入到图形化界面
进入命令是:startx
。等待一段时间后就能看到主界面了。
2.3 创建共享文件夹
由于相关文件都是在Windows操作系统上,因此为了传给CentOS7,利用VMware创建一个共享文件夹是一个很好的方法。
由于此处使用的是Minimal版本的CentOS,因此很多软件都没有。在设置共享文件夹之前,需要参考这篇博文安装VMware Tools:VMware Tools安装步骤(windows10)。虽然这篇博文中用的是Ubuntu,但操作都大同小异,可以参考。
创建共享文件夹的详细操作可以参考博文:VMware教程(一):设置 CentOS 7 共享文件夹。此处我创建的文件夹名为Windows2Linux。
完成共享文件夹的设置后,重启虚拟机。之后可以在路径 /mnt/hgfs 下看到这个文件夹。
三、安装必要的库
- 首先需要安装的是一个32位库,因为后续进行的crack操作需要用到32位的脚本。安装命令为:
yum install xulrunner.i686
。中途会出现一个选项,选择y即可。安装完成后出现Complete!字样表示安装完成。 - 安装redhat_lsb,安装命令为:
yum install redhat-lsb
。中途会出现一个选项,选择y即可。安装完成后出现Complete!字样表示安装完成。 - 安装dos2unix,安装命令为:
yum install dos2unix
。中途会出现一个选项,选择y即可。安装完成后出现Complete!字样表示安装完成。
四、正式安装Questasim
4.1 安装软件
解压Questasim安装包,将解压后的文件夹放入共享文件夹中。在虚拟机中找到共享文件夹,并用指令./install.linux64
运行安装程序。
该安装程序是图形化界面的,因此按照指示操作即可。
安装时需注意选项为:
- “发布版本”处选择版本,选择10.7c;
- “平台”处选择操作系统,选择All Platforms,避免后面的license等报错。
然后等待安装完成。
4.2 crack准备
在共享文件夹中找到linux_patch文件夹,并进入linux文件夹,将其中的文件patch_2021和sfk文件放在Questasim的安装目录下、相对路径为 /questasim/linux_x86_64/mgls/lib 的文件夹中;将libstdc++.so.5放在文件夹 /usr/lib 中。可以使用mv命令完成这两步操作。以我为例,命令分别为:mv patch_2021 sfk /home/EDA/QuestaSim/questasim/linux_x86_64/mgls/lib
和mv libstdc++.so.5 /usr/lib
。移动时的情况如图所示。
4.3 执行crack
回到上一步中、相对路径为 /mgls/lib 的目录下,执行命令:
./sfk rep -yes -pat -bin /5589E557565381ECD00000008B5508/31C0C357565381ECD00000008B5508/ -bin /5589E557565381ECD8000000E8000000005B81C3/33C0C357565381ECD8000000E8000000005B81C3/ -bin /41574989FF415641554154554889CD534489C3/33C0C389FF415641554154554889CD534489C3/ -dir .
这里一定要注意三点:
- 目录路径不能出错;
- 命令很长,不能输错,尤其是结尾有一个空格。如果无法复制,在Windows中的共享文件夹下新建一个txt文档,把命令复制进去,然后在虚拟机中找到该txt文档(以order.txt为例),用命令
cat order.txt
把命令打到终端界面上,就像下图这样:
- 输出里面必须有2 changed字段输出。如果没有,优先检查32位库是否安装成功。
紧接着执行命令./patch_2021
,该命令如果执行失败,需要用vim打开该文件,然后在末尾加上一个空格,保存后即可执行。该命令执行后的输出应该是这样:
4.3 license的生成与破解
首先分别使用命令hostname
和ifconfig
来取得hostname和mac_address这两个参数。hostname参数好说,直接就能得到。mac_address这个参数需要在如图红圈处取得,并去掉其中的冒号:
记下这两个参数,在Windows下,进入共享文件夹,打开linux_patch文件夹下的Patch文件夹,用记事本等软件打开license.src文件,将第一行的ubuntu修改为自己的hostname(这里以bogon为例),再将第一行的地址修改为自己的、去掉冒号后的mac_address(这里以000c2995ee0c为例),修改后变成了:
SERVER bogon 000c2995ee0c 27001
紧接着修改第二行。第二行主要修改Questasim的安装地址,以我为例,就是 /home/EDA/QuestaSim/questasim/linux_x86_64 ,修改后第二行变成了:
VENDOR mgcld /home/EDA/QuestaSim/questasim/linux_x86_64
此时该文件修改完成。保存并关闭该文件,执行与该文件同目录下的、名为run_me.bat的批处理文件,执行完毕后会在该文件夹下生成一个名为mentor.dat的文件。将该文件夹移动到Questasim的安装目录即可。同样使用mv命令。以我为例,命令为:mv mentor.dat /home/EDA/QuestaSim/questasim
。
移动完成后,回到Questasim的安装目录,执行这个生成的批处理文件。执行命令为dos2unix ./mentor.dat
,显示转换完成后,就可以设置环境变量了。
4.4 环境变量的设置
使用命令vim ~/.bashrc
打开系统变量文件,在最后一行加入以下内容:
export LM_LICENSE_FILE=/***/questasim/mentor.dat
export PATH=$PATH:/***/questasim/linux_x86_64
alias licm="/***/questasim/linux_x86_64/lmgrd -c /***/questasim/mentor.dat"
其中/***/部分的内容需要根据自己的安装路径情况进行修改。仍然以我为例,这里修改后为:
export LM_LICENSE_FILE=/home/EDA/Questasim/questasim/mentor.dat
export PATH=$PATH:/home/EDA/Questasim/questasim/linux x8664
alias licm="/home/EDA/QuestaSim/questasim/linux_x86_64/lmgrd -c / /home/EDA/QuestaSim/questasim/mentor.dat"
保存并退出。然后执行命令source ~/.bashrc
,应用设置好的环境变量。
在终端输入命令licm
,待其启动后输入命令vsim
,就可以等待Questasim的主界面出现了。
五、其他
似乎每次开机都需要执行启动License步骤,也就是执行命令licm
,原因不明,反正就是这样吧。
本文来自博客园,作者:TooyamaYuuouji,转载请注明原文链接:https://www.cnblogs.com/Lexington-CV2/articles/16537373.html