我参考http://blog.chinaunix.net/uid-24490134-id-249690.html
进行安装出现了一下问题,
1、我下载了tcl-debug-2.0的压缩文件tcl-debug.tar.gz,将放到与ns-2.35平行的目录即 /home/XXX/ns-allinone-2.35/目录 下,并且解压在该目录下
2、编译tcl-debug,并且将产生的可加载的库文件复制到ns-2.xx的库目录里面,具体步骤如下:
1) 进入到tcl-debug目录下面
$ cd tcl-debug-2.0
2) 配置并且编译tcl-debug
$ ./configure --prefix=/home/XXX/ns-allinone-2.xx/ns-2.xx --with-tcl=/home/XXX /ns-allinone-2.xx/tcl8.5.xx/unix 其中, XXX为你的用户目录文件夹名字,xx要根据你装的ns2确定。
$ make
3)检查可加载的库文件(*.a) 在编译之后是否被创建。
查看是否产生了一个"libtcldbg.a" 文件。他是一个tcl的库文件。
4) 复制这个库文件到NS2 库目录里面,即 /home/ XXX /ns-allinone-2.xx/lib下面
3、编译ns2
1) 进入ns-2.xx目录下面,即 /home/XXX/ns-allinone-2.xx/ns-2.xx
2) 重新配置NS2以便启用tcl-debug.
$ ./configure --with-tcldebug=/home/XXX/ns-allinone-2.xx/tcl-debug-2.0
注意:你可以从屏幕输出的信息查看到tcl-debug是否被验证了。
如果你没有看到以下的文字,你需要重复以前的步骤。
Checking for libtcldbg... -L/home/XXX/ns-allinone-2.xx/ns-2.xx /tcl-debug-2.0 -ltcldbg
上面的文字在下面这句话之后出现
checking dmallc... not requested with --with-dmalloc
3)删除以前的编译纪录
$ make clean
注:这一步骤非常重要!
4)重新编译NS2
$ make
现在tcl-debug已经嵌入到ns2的可执行文件"ns.exe"中去了
5)检查NS-2是否能够正常运行。随便选择一个脚本测试一下就可以了
利用文本编辑器编辑在脚本的下述位置加入一行代码:
......
set ns [new Simulator]
debug 1; # 在这个位置添加这么一行代码
......
运行脚本,会出现如下的提示,说明安装完成。
2: lappend auto_path $dbg_library
dbg2.0>
安装过程中出现的一些问题:
问题1:
在编译tcl-debug的时候出现说tcl未安装完全的消息
我记得我在安装环境的时候装过的,没办法,重新装了一次,参考 http://www.cnblogs.com/dracula/archive/2010/12/22/1913797.html上的tcl源码安装方法
进如tcl8.5.10目录下,
cd unix
./configure
--prefix=/usr/tcl
Make
Make install
Cd ..
cp ./unix/tclUnixPort.h ./generic/
下面的那个拷贝是需要的,不然会提示找不到
./unix/tclUnixPort.h在generic中之类的问题,
问题2:
在重新编译NS2的时候还是提示
这个问题,于是我在
后面加上配置参数 --with-tcl=/home/xxx/ns0allinone-2.35/tcl8.5.10 --with-tcl-ver=8.5.10
问题解决了