注:参考版本来自网上,这是我的最新修改版:ubuntu12.10上针对NS2-2.35的tcl-debug-2.0的安装记录
1.下载 tcl-debug-2.0;将下载的tar包解压并拷贝到ns-allinone-2.35目录下
2. 编译tcl-debug,并且将产生的可加载的库文件复制到NS-2.35的库目录里面,具体步骤如下:
1) 进入到tcl-debug目录下面
$ cd tcl-debug-2.0
2) 配置并且编译tcl-debug
$ ./configure --prefix=.../ns-allinone-2.35/ns-2.35 --with-tcl=.../ns-allinone-2.35/tcl8.5.10/unix
报错: tcl~/generic/tclPort.h内指向tclUnixPort.h不存在,实质存在于unix folder中,改成用全路径指定
$ make
3)检查可加载的库文件(*.a) 在编译之后是否被创建。
查看是否产生了一个"libtcldbg.a" 文件。他是一个tcl的库文件。
4) 复制这个库文件到.../ns-allinone-2.35/lib下
3. 编译NS-2
1) 进入.../ns-allinone-2.35/ns-2.35
2) 重新配置NS-2以便启用tcl-debug.
$ ./configure --with-tcldebug
注意:你可以从屏幕输出的信息查看到tcl-debug是否被验证了。若没有看到以下的文字,你需要重复以前的步骤。
Checking for libtcldbg... -L/home/Maxiaolin/ns-allinone-2.35/tcl-debug-2.0 -ltcldbg
checking dmalloc... not requested with --with-dmalloc
3)删除以前的编译纪录
$ make clean 注:这一步骤非常重要!
4)重新编译NS-2
$ make
$ ns example.tcl
4. 检查tcl-debug是否能够正常工作。
你可以通过添加debug 1在你的脚本中设置断点。示例如下:
1)从目录~ns/tcl/ex directory 里面选择一个脚本, 如: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>
1.下载 tcl-debug-2.0;将下载的tar包解压并拷贝到ns-allinone-2.35目录下
2. 编译tcl-debug,并且将产生的可加载的库文件复制到NS-2.35的库目录里面,具体步骤如下:
1) 进入到tcl-debug目录下面
$ cd tcl-debug-2.0
2) 配置并且编译tcl-debug
$ ./configure --prefix=.../ns-allinone-2.35/ns-2.35 --with-tcl=.../ns-allinone-2.35/tcl8.5.10/unix
报错: tcl~/generic/tclPort.h内指向tclUnixPort.h不存在,实质存在于unix folder中,改成用全路径指定
$ make
3)检查可加载的库文件(*.a) 在编译之后是否被创建。
查看是否产生了一个"libtcldbg.a" 文件。他是一个tcl的库文件。
4) 复制这个库文件到.../ns-allinone-2.35/lib下
3. 编译NS-2
1) 进入.../ns-allinone-2.35/ns-2.35
2) 重新配置NS-2以便启用tcl-debug.
$ ./configure --with-tcldebug
注意:你可以从屏幕输出的信息查看到tcl-debug是否被验证了。若没有看到以下的文字,你需要重复以前的步骤。
Checking for libtcldbg... -L/home/Maxiaolin/ns-allinone-2.35/tcl-debug-2.0 -ltcldbg
checking dmalloc... not requested with --with-dmalloc
3)删除以前的编译纪录
$ make clean 注:这一步骤非常重要!
4)重新编译NS-2
$ make
现在tcl-debug已经嵌入到NS-2的可执行文件"ns.exe"中去了
5)切换到root用户,再运行make install
$su
$make install
这一步很重要,否则会出现错误:"warning: Script debugging disabled.Reconfigure with --with-tcldebug, and recompile."
6)检查NS-2是否能够正常运行。随便选择一个脚本测试一下就可以了$ ns example.tcl
4. 检查tcl-debug是否能够正常工作。
你可以通过添加debug 1在你的脚本中设置断点。示例如下:
1)从目录~ns/tcl/ex directory 里面选择一个脚本, 如: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>