加入收藏 设为首页 联系站长
首页 | 虚拟动态 | Cisco模拟 | Juniper仿真 | 虚拟机 | 网络仿真 | 软件路由 | 技术专题 | 相关软件 | 交流论坛
>首页 -> 网络仿真 -> Opnet

TOP

OPNET与VC调试经验总结
[ 录入者:admin | 时间:2007-10-28 01:25:32 | 作者: | 来源: | 浏览:1325次 ]

基于Debugging in OPNET withMicrosoft Visual C++ 调试的文档(资料下载区提供),有一些经验总结如下:
(1)修改Preference中的环境变量时,/Od与/Zi之间要有空格,另外注意O不是0。
(2)除了修改bind_shobj_flags、comp_flags、comp_flags_cpp外,还要修改bind_static_flags:即后面添加/DEBUG。可以从文档中的示意图中看出。记着,中间一定要有空格。
(3)如出现上述设置上的问题,可以从编译结果中查看问题。(建议可以故意在一个process model中加一条语法错误的语句,然后编译看列出的出错信息。)
(4)在attach process时,如果看不到任何process,尽量关闭不必要的程序,只留下opnet的project窗口和VC。如果还不行,就要给VC打SP5补丁了。不过有一种更简单的方法,就是在任务管理器中,在进程中找到op_runsim_dev.exe进程,右键,然后调试,即可和VC进行联调。
(5)修改Simulation model的environment files时,一般不需将Force Compile设为enable,因为调试时一般process model都已编译好。如果把Force Compile设为enable的话,每次启动simulation都会把项目中包含的所有的process model重新编译,会耗很长时间。但是为了保证代码为最新改写过得,建议还是enable为好。
(6)如果不想让debug窗口自动关闭,可以把consle_exit_pause改为TRUE,仿真完后会提示Press <ENTER> to continue.按两次<ENTER>才会关闭debug窗口。
(7)编译的时候产生调试信息的参数是 /Z7 或 /Zi,(注意:/Z8并不是合法的参数)。调试时还需要关闭编译器的优化功能,所以还要加上/Od。连接的时候需要保留调试信息,所以在bind_shobj_flags后面要加上 /DEBUG。
(8) config simulation里面的debug,目的是让op_runsim运行在debug模式下,等效于console下面的 -debug。force_compile的作用是每次编译时都重建所有的模块,以使你在VC下面看到的源程序都是最新的。
(9)在VC调试时,从断点后开始单步运行,最后总会走到一个向汇编中的机器代码的地方。odb那边也不能敲任何命令。这很正常,那个汇编的地方就是OPNET的内核之类的东西。不用管它,在VC里面再选run就行了。程序会运行到VC的下一个断点,或者ODB重新可以敲命令了。
(10)最基本的一个问题,在OPNET调试时,报错:
bind_so_msvc: Unable to execute bind program (Win32 error code: 2)
Check that Visual C++ has been installed correctly, and that
its BIN directory is included in the Path environment variable.
那么可以按照一般的方法来手动添加环境变量,但是就笔者经验,即使当时通过,之后可能还会出现问题。最彻底的办法就是VC和OPNET重装一遍,先安装VC,安装时,要选择注册环境变量。OPNET也不能偷懒,就一步一步按顺序安装吧。

       这些都是笔者和一些使用OPNET的朋友的一些总结,有什么不足还望大家赐教,互相交流,共同进步!


[上一篇]OPNET信道模型概述 [下一篇]点对点链路的pipeline模型
※相关文章
 

评论

称  呼:
内  容:

相关栏目

最新文章

热门文章

推荐文章

赞助商链接