Hey all, I'm trying to implement LEACH in NS-2.27. My OS is Ubuntu 7.04. I followed the instructions which I summarized in http://ranlog.blogspot.com/2007/04/ns-227leach-on-ubuntu-704-installation.html .
But when running "leach_test", I got the following OTcl error: invalid command name "Resource/Energy" while executing "Resource/Energy instproc setParams {args} { $self instvar energyLevel_ alarmLevel_ set energyLevel_ [lindex $args 0] set alarmLevel_ [lind..." (file "/home/ran/ns-allinone-2.27/ns-2.27/mit/rca/resources/ns- energy-resource.tcl" line 13) invoked from within "source.orig /home/ran/ns-allinone-2.27/ns-2.27/mit/rca/resources/ns- energy-resource.tcl" ("uplevel" body line 1) invoked from within "uplevel source.orig [list $fileName]" invoked from within "if [$instance_ is_http_url $fileName] { set buffer [$instance_ read_url $fileName] uplevel eval $buffer } else { uplevel source.orig [list $fileName] ..." (procedure "source" line 8) invoked from within "source $env(RCA_LIBRARY)/resources/ns-energy-resource.tcl" (file "uamps.tcl" line 18) I found there were no so called "Resource/Energy" class defined in the tcl file, so I added a line of code in ~ns/mit/rca/resources/ns- energy-resource.tcl: Class Resource/Energy - superclass Resource After this, I got this when running "leach_test" again: uneven number of args (Object init line 1) invoked from within "Resource/Energy init - superclass Resource" (Class create line 1) invoked from within "Class create Resource/Energy - superclass Resource" ("eval" body line 1) invoked from within "eval [list $self] create [list $m] $args " (procedure "Class" line 5) (Class unknown line 5) invoked from within "Class Resource/Energy - superclass Resource" (file "/home/ran/ns-allinone-2.27/ns-2.27/mit/rca/resources/ns- energy-resource.tcl" line 11) invoked from within "source.orig /home/ran/ns-allinone-2.27/ns-2.27/mit/rca/resources/ns- energy-resource.tcl" ("uplevel" body line 1) invoked from within "uplevel source.orig [list $fileName]" invoked from within "if [$instance_ is_http_url $fileName] { set buffer [$instance_ read_url $fileName] uplevel eval $buffer } else { uplevel source.orig [list $fileName] ..." (procedure "source" line 8) invoked from within "source $env(RCA_LIBRARY)/resources/ns-energy-resource.tcl" (file "uamps.tcl" line 18) Could anybody give some thoughts on this? Has anyone ever encountered the problem before?