LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   how to integrate the "Resource/Energy" leach class into NS-2.34? (https://www.linuxquestions.org/questions/linux-software-2/how-to-integrate-the-resource-energy-leach-class-into-ns-2-34-a-870368/)

deepa_2111 05-11-2011 08:19 AM

Please see my reply in Post #29

helyos 05-11-2011 08:39 AM

Hi there,

I am really a beginner and for a school project I have to make a simulation for LEACH protocol in ns.
I have installed ns-allinone-2.34 on Ubuntu 11.04 and now i think i have to add the LEACH patch to ns. As i read here there are some steps to do but the problem is that i have installed "gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4) ".

Can someone please help me with the exact steps for this version of gcc complier.

Thank you in advance.
Awaiting for your early reply.

leminh1009 05-11-2011 12:38 PM

Hi MayTamer,

I set up successfully ns2 and leach but I've run ./test and I can't find leach.out. Could you please advise me this problem ?

Quote:
oot@bt:~/ns-allinone-2.34/ns-2.34# ./test
num_nodes is set 3
warning: Please use -channel as shown in tcl/ex/wireless-mitf.tcl
INITIALIZE THE LIST xListHead
Loading connection pattern...
Loading scenario file...
Starting Simulation...
channel.cc:sendUp - Calc highestAntennaZ_ and distCST_
highestAntennaZ_ = 1.5, distCST_ = 550.0
SORTING LISTS ...DONE!
NS EXITING...
root@bt:~/ns-allinone-2.34/ns-2.34#

helyos 05-11-2011 01:54 PM

leminh1009, can you help me with my issue? please

deepa_2111 05-11-2011 03:50 PM

Quote:

Originally Posted by leminh1009 (Post 4353462)
Hi MayTamer,

I set up successfully ns2 and leach but I've run ./test and I can't find leach.out. Could you please advise me this problem ?

Quote:
oot@bt:~/ns-allinone-2.34/ns-2.34# ./test
num_nodes is set 3
warning: Please use -channel as shown in tcl/ex/wireless-mitf.tcl
INITIALIZE THE LIST xListHead
Loading connection pattern...
Loading scenario file...
Starting Simulation...
channel.cc:sendUp - Calc highestAntennaZ_ and distCST_
highestAntennaZ_ = 1.5, distCST_ = 550.0
SORTING LISTS ...DONE!
NS EXITING...
root@bt:~/ns-allinone-2.34/ns-2.34#

look at the /mit/leach_sims/ directory in your ns-2.34 folder. leach.out and all the other simulation results should be there

knudfl 05-12-2011 04:55 AM

@ helyos, post # 32 : Welcome to LQ.

You can have as many compilers as you want, installed at the same time.
Installing g++-4.2 : Read post # 2.

And g++-4.3 : Must be manually installed. It's an Ubuntu Lucid package :
http://packages.ubuntu.com/lucid/g++-4.3

Use with e.g.: export CC=gcc-4.3 CXX=g++-4.3 && ./install

..

helyos 05-12-2011 07:03 AM

Thank you knudfl,
I have installed g++-4.2 and i have followed post #7 and at step 6:

6. Edit both “Makefile” & “Makefile.in” as following:
CC = gcc-4.2
CPP = g++-4.2


Then when i gave ./configure it gave me :

Code:

checking for tclsh8.4.18... no
checking for tclsh8.4... /usr/bin/tclsh8.4
checking for tk.h... -I../tk8.4.18/generic
checking for libtk8.4... -L/usr/lib -ltk8.4
checking for tk.tcl... ../tk8.4.18/library
checking for otcl.h... -I../otcl-1.13
checking for libotcl1.13... -L/usr/lib -lotcl
checking for tclcl.h... -I../tclcl-1.19
checking for libtclcl... no
checking for tcl2c++... /usr/bin

configure: error: Installation of tcl seems incomplete or can't be found automatically.
Please correct the problem by telling configure where tcl is
using the argument --with-tcl=/path/to/package
(perhaps after installing it),
or the package is not required, disable it with --with-tcl=no.

If i gave
rares@ubuntu:/opt/ns-allinone-2.34/ns-2.34$ ./configure --with-tcl=/usr/share/tcltk/
:

Code:

checking if STL works with namespace std... yes
checking should use STL... yes
checking for tcl.h... no
checking for tclInt.h... no
checking for libtcl8.4... no
checking for init.tcl... no
checking for http.tcl... no
checking Tcl http.tcl library... configure: error: Couldn't find http.tcl in                  /http        /http2.4        /http2.3        /http2.1        /http2.0        /http1.0

How can i fix it?

leminh1009 05-12-2011 10:22 AM

Hi everyone,

As previous, when I've been running ./test and I reached leach.out as following path: /root/ns-allinone-2.34/ns-2.34/ns-234-leach/mit/leach_sims but no result in it.

Could you please help me solve this problem?

Thanks in advance,

knudfl 05-12-2011 11:30 AM

#37, @ helyos : "" ... have followed post #7 and at step 6: ""

You mean post # 5 ? Post #5 assumes a working ns-allinone-2.34/.
cd ns-allinone-2.34/ && export CC=gcc4.2 CXX=g++-4.2 && ./install
( If you have built ns-allinone-2.34/ to another location, it cannot be reused.
You will have to start from scratch.)


Another thing : Ubuntu 11.04 is 'worst choice' for ns-allinone-2.34/.
Suggest : Use the 'Long Term Supported' Ubuntu 10.04.


..

helyos 05-12-2011 11:50 AM

Quote:

Originally Posted by knudfl (Post 4354470)
Another thing : Ubuntu 11.04 is 'worst choice' for ns-allinone-2.34/.
Suggest : Use the 'Long Term Supported' Ubuntu 10.04.


..

Ok, Thanks. I will install Ubuntu 10.04 and i will try to do a fresh install of ns2 on it.

helyos 05-12-2011 04:23 PM

Pfff.. now I am more closer to the end. So i installed the 'Long Term Supported' Ubuntu 10.04. In staled ns2 into the opt directory.
And now i passed from ./configure

I am stucked when i enter $ make:

Code:

rares@ubuntu:/opt/ns-allinone-2.34/ns-2.34$ make
g++-4.3 -c -Wall -Wno-write-strings  -DTCP_DELAY_BIND_ALL -DNO_TK -DTCLCL_CLASSINSTVAR  -DNDEBUG -DLINUX_TCP_HEADER -DUSE_SHM -DHAVE_LIBTCLCL -DHAVE_TCLCL_H -DHAVE_LIBOTCL1_13 -DHAVE_OTCL_H -DHAVE_LIBTK8_4 -DHAVE_TK_H -DHAVE_LIBTCL8_4 -DHAVE_TCLINT_H -DHAVE_TCL_H  -DHAVE_CONFIG_H -DNS_DIFFUSION -DSMAC_NO_SYNC -DCPP_NAMESPACE=std -DUSE_SINGLE_ADDRESS_SPACE -Drng_test -DMIT_uAMPS  -I. -I. -I/opt/ns-allinone-2.34/tclcl-1.19 -I/opt/ns-allinone-2.34/otcl -I/opt/ns-allinone-2.34/include -I/opt/ns-allinone-2.34/include -I/opt/ns-allinone-2.34/include -I/usr/include/pcap -I./tcp -I./sctp -I./common -I./link -I./queue -I./adc -I./apps -I./mac -I./mobile -I./trace -I./routing -I./tools -I./classifier -I./mcast -I./diffusion3/lib/main -I./diffusion3/lib -I./diffusion3/lib/nr -I./diffusion3/ns -I./diffusion3/filter_core -I./asim/ -I./qs -I./diffserv -I./satellite -I./wpan -I./mit/rca -I./mit/uAMPS -o tools/random.o tools/random.cc
make: g++-4.3: Command not found
make: *** [tools/random.o] Error 127

knudfl please help me. thank you in advance!

deepa_2111 05-12-2011 11:11 PM

Hi,

Ok .. try running leach_test alone. See if the output is created.
( You have to manually create the folder leach_sims )
Once you run leach_test, in \mit\leach_sims\ folder, open leach.err.
Do you have any error messages in it ?

Quote:

Originally Posted by leminh1009 (Post 4354399)
Hi everyone,

As previous, when I've been running ./test and I reached leach.out as following path: /root/ns-allinone-2.34/ns-2.34/ns-234-leach/mit/leach_sims but no result in it.

Could you please help me solve this problem?

Thanks in advance,


knudfl 05-13-2011 02:25 AM

#41, @helyos : No g++-4.3 unless you install it : Like all other prerequisites.


sudo apt-get install g++ g++-4.3 autoconf automake libtool \
libx11-dev libxmu-dev libxmu-headers libxt-dev


cd ns-allinone-2.34/ && export CC=gcc-4.3 CXX=g++-4.3 && ./install

..

helyos 05-13-2011 05:07 AM

@ knudfl When i have installed ns2 i have followed this http://www.anand-iyer.com/blog/?p=22 .

sudo apt-get install build-essential autoconf automake libxmu-dev gcc-4.3 was issued.

./install was issued too.

---------------------------
Ok so i have tried your way but failed at /install

it gave me :

Code:

* Build tcl8.4.18
============================================================
configure: WARNING: unrecognized options: --enable-gcc
checking whether to use symlinks for manpages... no
checking whether to compress the manpages... no
checking whether to add a package name suffix for the manpages... no
checking for gcc... gcc4.3
checking whether the C compiler works... no
configure: error: in `/opt/ns-allinone-2.34/tcl8.4.18/unix':
configure: error: C compiler cannot create executables
See `config.log' for more details.
tcl8.4.18 configuration failed! Exiting ...
Tcl is not part of the ns project.  Please see www.Scriptics.com
to see if they have a fix for your platform.

What should i do next? Reinstall it again?

knudfl 05-13-2011 08:16 AM

#44, @helyos.

Please do : sudo apt-get install g++ g++-3.4
I.e. the g++ components are required to have a working gcc(-any-version)

Quote:

checking for gcc... gcc4.3
There is a missing hyphen ( - ) : It's gcc-3.4

A good idea before compiling is to do these checks :
1) ls /usr/bin/gcc* 2) ls /usr/bin/g++*
.. to verify the compiler spelling. ("gcc34" is commonly used too.)


All times are GMT -5. The time now is 05:37 PM.