Modelsim执行vmap命令报vmap-7警告及modelsim.ini写入错误如何解决
Warning: (vmap-7) Failed to open lock file "C:/intelFPGA/20.1/modelsim_ase/win32aloem/../modelsim.ini_lock" in create mode. Permission denied. (errno = EACCES)
-- Giving up waiting on lock. Lockfile is "C:/intelFPGA/20.1/modelsim_ase/win32aloem/../modelsim.ini_lock". Error: WriteIniString C:/intelFPGA/20.1/modelsim_ase/win32aloem/../modelsim.ini failed: 2
问题根因
该报错是Intel FPGA自带的Modelsim Altera Edition默认将全局配置文件modelsim.ini放在C盘系统级目录下,普通用户账户默认没有该目录的写入权限。执行vmap命令时需要修改该配置文件写入库映射规则,无法创建锁文件、写入配置就会抛出对应错误。你当前VHD文件可正常运行是因为work库已在本地项目目录创建成功,vmap的临时映射在当前会话生效,只是永久映射没有写入全局配置而已。
修复方案
方案1:修改全局配置文件权限(永久生效,适合单用户使用场景)
- 打开路径
C:/intelFPGA/20.1/modelsim_ase/ - 找到
modelsim.ini文件,右键选择「属性」-「安全」 - 在组或用户名列表中选中你当前的Windows登录账户,勾选「写入」权限后点击确定保存
- 重新执行
vmap work work即可正常写入全局映射,不会再弹出权限报错
方案2:使用项目级独立配置(推荐,不修改全局文件,适合多项目隔离场景)
- 每次新建项目后,先将全局
modelsim.ini拷贝到当前项目根目录,执行命令:copy C:/intelFPGA/20.1/modelsim_ase/modelsim.ini ./ - 右键点击项目目录下的这个
modelsim.ini,取消勾选「只读」属性后保存 - 后续在该项目目录下启动Modelsim、执行
vmap命令时,会优先读写本地项目目录的配置文件,不会触发全局目录的权限限制 - 不同项目的库映射可以互相独立,不会互相干扰
方案3:临时权限解决方案
如果只是临时需要执行vmap写入全局映射,右键点击Modelsim快捷方式,选择「以管理员身份运行」后再执行对应命令即可,无需修改文件权限。
内容的提问来源于stack exchange,提问作者Serad01
相关产品推荐
相关产品推荐

