挨踢茶馆

专注于云计算、网络技术的个人博客

Linux下GNS3报错解决方法

  前些天,在RHEL6环境下安装了思科交换机\路由器模拟器GNS3,但是在打开GNS3后,当拖动模拟的设备到拓扑的时候,会弹出以下错误:

File “/usr/local/GNS3-0.7.4/src/GNS3/Scene.py”, line 777, in dropEvent node = object(renderer_normal, renderer_select)
File “/usr/local/GNS3-0.7.4/src/GNS3/Node/IOSRouter2691.py”, line 31, in __init__IOSRouter.__init__(self, renderer_normal, renderer_select)
File “/usr/local/GNS3-0.7.4/src/GNS3/Node/IOSRouter.py”, line 59, in __init__AbstractNode.__init__(self, renderer_normal, renderer_select)
File “/usr/local/GNS3-0.7.4/src/GNS3/Node/AbstractNode.py”, line 62, in __init__flags = flags | self.ItemSendsGeometryChanges
AttributeError: ‘IOSRouter2691’ object has no attribute ‘ItemSendsGeometryChanges’

  解决这个问题的方法比较简单,只需要到安装GNS3的相关目录下,找到AbstractNode.py文件,在大概60行的地方找到:

# scene settings
flags = self.ItemIsMovable | self.ItemIsSelectable | self.ItemIsFocusable
# necessary to receive itemChange() notifications with Qt >= 4.6
if QtCore.QT_VERSION >= 0x040600:
    flags = flags | self.ItemSendsGeometryChanges
self.setFlags(flags)
self.setAcceptsHoverEvents(True)
self.setSharedRenderer(self.__render_normal)

修改为:

 # scene settings
flags = self.ItemIsMovable | self.ItemIsSelectable | self.ItemIsFocusable
self.setFlags(flags)
self.setAcceptsHoverEvents(True)
self.setSharedRenderer(self.__render_normal)

  更改完后报错即没有再出现了。


扫描下面二维码添加公众号【挨踢茶馆】,并回复微信群。您将被邀请进入AWS群,走向人生巅峰,迎娶白富美!
 


点赞
  1. 合肥换锁说道:

    不错,感谢分享。

  2. u s b 电视棒说道:

    分析得很深刻.不错

发表评论

电子邮件地址不会被公开。 必填项已用*标注