【问题标题】:I am using ModelSim Altera 10.3d Quartus II 15.0 starter edition. When I open it I get an error message我正在使用 ModelSim Altera 10.3d Quartus II 15.0 入门版。当我打开它时,我收到一条错误消息
【发布时间】:2015-08-31 14:48:26
【问题描述】:
无法读取“_clients()”:没有这样的变量 在执行时 “设置 _currObj $_clients($cid)” (对象“::.bookmarkmgr”方法“::vsimwidgets::bookmarkmgr::_setcurrent”正文第11行) 从内部调用 “_setcurrent $cid” (对象“::.bookmarkmgr”方法“::vsimwidgets::bookmarkmgr::_menu_prepost”正文第16行) 从内部调用 "::.bookmarkmgr _menu_prepost .mBar.bookmarks 1 {} 1" (在命名空间内“::vsimwidgets::bookmarkmgr”脚本第 1 行) 从内部调用 “命名空间范围内::vsimwidgets::bookmarkmgr {::.bookmarkmgr _menu_prepost .mBar.bookmarks 1 {} 1}” (“eval”正文第 1 行) 从内部调用 “评估 $post_cmd” (程序“::Vsimmenu:efaultMenuPostCmd”第 41 行) 从内部调用 “::Vsimmenu:efaultMenuPostCmd .mBar.bookmarks {namespace inscope ::vsimwidgets::bookmarkmgr {::.bookmarkmgr _menu_prepost .mBar.bookmarks 1 {} 1}} Se...” (菜单预处理)

如何消除此错误

【问题讨论】:

    标签: client tcl hardware fpga bookmarks


    【解决方案1】:

    好的,您正在查看由事件回调引发的 Tcl 堆栈跟踪。你需要有一点创造性来弄清楚它的含义,以及为什么会出现问题。特别是,我们看到您试图从一个不存在的变量中读取;这意味着_clients 数组不是您认为的那样,或者cid 是一个空字符串,而您并不期望它是。

    判断_clients 是否正确的唯一方法是查看代码(您尚未向我们展示)。如果您需要说global _clientsvariable _client 或类似的内容(可能涉及upvar),请特别检查。

    如果cid 出乎意料地为空,您将对其进行追溯。猜测一下,它是从菜单回调传入的空值,标识为:

    ::Vsimmenu:efaultMenuPostCmd .mBar.bookmarks {namespace inscope ::vsimwidgets::bookmarkmgr {::.bookmarkmgr _menu_prepost .mBar.bookmarks 1 {} 1}} Se...
    

    在代码中不会这样。 您正在寻找创建使用namespace code 命令的菜单绑定的东西,其中可能会变成::.bookmarkmgr _menu_prepost .mBar.bookmarks 1 {} 1 作为主体。我猜想它会反过来用list、小部件名称等来完成。但它也可能全部包含在某种抽象的小部件管理代码中; 除非你很幸运,否则追捕它并不是一件容易的事。

    如果您没有编写任何代码来触发此操作,而您只是尝试启动应用程序,请联系供应商并提交支持请求。

    【讨论】:

      【解决方案2】:

      我就这个问题联系了供应商,他们为我的机器提供了修复。

      对于 Windows:

      1. 单击桌面上的开始按钮并搜索“regedit”
      2. 展开“HKEY_CURRENT_USER”>展开“软件”>展开“模型技术”>选择“ModelSim”
      3. 删除此文件夹中的所有文件
      4. 重启 ModelSim

      对于 Linux:

      您的主目录中应该有一个“.modelsim”文件。 请删除此文件,然后当您重新启动 ModelSim 时,它会 自动为您创建一个新的 .modelsim 文件。

      【讨论】:

        【解决方案3】:

        对于 Windows:

        单击桌面上的开始按钮并搜索“regedit” 展开“HKEY_CURRENT_USER”>展开“软件”>展开“模型技术”>选择“ModelSim” 删除此文件夹中的所有文件 重启 ModelSim

        谢谢,工作:) 非常感谢

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-10-11
          • 1970-01-01
          • 2018-05-23
          • 2021-01-14
          • 2022-06-16
          • 2020-03-24
          • 2019-11-16
          相关资源
          最近更新 更多