天天看点

ns-2.34安装tcldebug

1. 下载 tcl-debug-2.0(http://expect.nist.gov/tcl-debug/tcl-debug.tar.gz),将下载的tar包拷贝到与NS-2.34平行的目录下,并解压

Tar –zxvf tcl-debug.tar.gz

2. 编译tcl-debug,并且将产生的可加载的库文件复制到NS-2.34的库目录里面,具体步骤如下:

1) 进入到tcl-debug目录下面

        $ cd tcl-debug-2.0

    2)  配置并且编译tcl-debug

        $ ./configure --prefix=/home/hanwei/ns-allinone-2.34/ns-2.34 --with-tcl=/home/hanwei/ns-allinone-2.34/tcl8.4.18/unix

        $ make

    3) 检查可加载的库文件(*.a) 在编译之后是否被创建。

        查看是否产生了一个"libtcldbg.a" 文件。他是一个tcl的库文件。

    4) 复制这个库文件到NS-2 库目录里面,即 /home/hanwei/ns-allinone-2.34/lib下面(这点很重要哦):

$ cp libtcldbg.a /home/hanwei/ns-allinone-2.34/lib

3. 编译NS-2

    1) 进入ns-2.34目录下面,即 /home/hanwei/ns-allinone-2.34/ns-2.34

    2) 重新配置NS-2以便启用tcl-debug.

   $ ./configure --with-tcldebug=/home/hanwei/ns-allinone-2.34/tcl-debug-2.0

     注意:你可以从屏幕输出的信息查看到tcl-debug是否被验证了。

      如果没有看到两行字,需要重复以前的步骤。

    checking for libtcldbg... -L/home/Maxiaolin/ns-allinone-2.34/tcl-debug-2.0 –ltcldbg

checking dmallc... not requested with --with-dmalloc 

    3)删除以前的编译纪录

       $ make clean

        注:这一步骤非常重要!

    4)重新编译NS-2

       $ make   

        现在tcl-debug已经嵌入到NS-2的可执行文件"ns.exe"中去了

    5)检查NS-2是否能够正常运行。随便选择一个脚本测试一下就可以了

       $ ns  example.tcl

4. 检查tcl-debug是否能够正常工作。

     你可以通过添加debug 1在你的脚本中设置断点。示例如下:

     1) 从~/ns-allinone-2.34/ns-2.34/tcl/ex里面选一个脚本, 如:wireless-test.tcl,利用文本编辑器编辑该脚本:

set ns_  [new Simulator]

       debug 1;  # 在这个位置添加这么一行代码

       set chan [new $opt(chan)]

    2) 运行 wireless-test.tcl

       $ ns wireless-test.tcl

       若成功,出现以下信息提示:

       2: lappend auto_path $dbg_library

      dbg2.0>

主要参考了张斌斌的“在NS2.33下安装tcl-debug-2.0”,只是网址为:

http://blog.csdn.net/charming520/archive/2009/05/23/4211691.aspx

万分感谢!