1

While adding a transport layer protocol in ns-2.31 in ubuntu 14.04, I am coming across the following error that I have been unable to resolve.

"make: *** [dtsncc/dtsncc-cache.o] Error 1" (screenshot available at)

https://www.dropbox.com/s/i8aoxw4cxra1o9v/dtsn%20error%20capture.png?dl=0

I have followed the instructions written in the readme file. I have ns2.31 working + fixRT + ns2measureDCF. I have modified the following files before the 'make'.

  • Packet.h
  • cmu-trace.cc and cmu-trace.h
  • priqueue.cc
  • ns-default.tcl
  • ns-packet.tcl
  • Makefile

A copy of the above mentioned files along with the compiler version are available at https://www.dropbox.com/sh/8mc9nyimljat42k/AAA4fBEkEEu7DyhGGxSd_9y3a?dl=0

Still I'm coming across the error in the attachment. The output of the make command can be seen at:

https://www.dropbox.com/s/0kambh7ns7d6i1c/make%20error?dl=0

The code for the protocol is available at https://www.dropbox.com/sh/1ngygz5nuxl0885/AAA3u1vnKIk9wZRf65GupUvCa?dl=0

I would really appreciate if someone can help me ASAP. I dont have alot of time to spare and have been trying to resolve this issue for the last 7 days. Also, all the contents of the above link can be found at

https://www.dropbox.com/sh/3kwtmmklytyp438/AAC5CkoYB55zfE0kpIyrQO1ka?dl=0

0

Your "error output" shows warnings, no errors.

Depending on the object order in the Makefile.in, I get two different errors. The readable results are here, dtsncc_14.Jul.2016_errors.txt https://drive.google.com/file/d/0B7S255p3kFXNZFlraEZXQWdCaGM/view?usp=sharing

fixrt/fixrt.cc:850: error: ‘HDR_NDTSN’ was not declared in this scope

Edit 01 : I created a patch with all the changes, including ns231_gcc44.patch, ns2measure-2.31-070909.patch : dtsncc-all_ns231-01.patch https://drive.google.com/file/d/0B7S255p3kFXNZzdzNGFBQXBTcW8/view?usp=sharing

Please try with the Ubuntu g++-4.4 compiler: export CXX=g++-4.4 && ./configure && make

.... The patch ns231_gcc44.patch https://drive.google.com/file/d/0B7S255p3kFXNUy1ldnhCeUlEUHc/view?usp=sharing

EDIT 2 : The error output with Ubuntu 14.04 - 64 → https://drive.google.com/file/d/0B7S255p3kFXNdmRiVGFsSlBBYnM/view?usp=sharing


EDIT 3, 26Jul : Got your "ns-2.31dtsncc". Replaced the header dtsncc/dtsncc.h with this https://drive.google.com/file/d/0B7S255p3kFXNMUpGUWx2STF0M0k/view?usp=sharing , and got some further with 'make'. Which leaves us with this error : wnd_' was not declared in this scope

ndtsn/ndtsn.cc: In constructor `NDtsnAgent::NDtsnAgent()':
ndtsn/ndtsn.cc:48: error: `wnd_' was not declared in this scope
ndtsn/ndtsn.cc: In member function `char* NDtsnAgent::get_bitmap_string(int*)':
.
ndtsn/ndtsn.cc: In member function `virtual int NDtsnAgent::window()':
ndtsn/ndtsn.cc:573: error: `wnd_' was not declared in this scope
ndtsn/ndtsn.cc: In member function `virtual double NDtsnAgent::windowd()':
ndtsn/ndtsn.cc:578: error: `wnd_' was not declared in this scope
  • The error at link dtsncc/dtsncc.cc:690: error: ‘class AODV’ has no member named ‘get_num_hops’ I was able to resolve it by adding the following in aodv.h file: At location class AODV: public Tap, public Agent { /* * make some friends first */ friend class aodv_rt_entry; . . . . public: AODV(nsaddr_t id); void recv(Packet *p, Handler *); void tap(const Packet *p); int get_num_hops(nsaddr_t node_id, nsaddr_t dst); – Umair Chaudhry Jul 15 '16 at 1:10
  • I have not been very fortunate with fixrt/fixrt.cc:850:29: error: ‘HDR_NDTSN’ was not declared in this scope hdr_ndtsn *th = HDR_NDTSN(p); – Umair Chaudhry Jul 15 '16 at 1:11
  • I was given this folder by my advisor and he has asked me to add it to ns-2. The folder is at: folder The error that I am is as follow: queue/priqueue.cc: In member function ‘virtual void PriQueue::recv(Packet*, Handler*)’: queue/priqueue.cc:98:19: warning: unused variable ‘dtpah’ [-Wunused-variable] struct hdr_dtpa *dtpah = HDR_DTPA(p); ^ make: *** [queue/priqueue.o] Error 1 Details can be seen at error Please help. – Umair Chaudhry Jul 20 '16 at 4:58
  • Please see my edited answer, EDIT 3, 26 July 2016. – Knud Larsen Jul 26 '16 at 14:31
  • So all I need to do is replace dtsncc/dtsncc.h with the dtsncc.h that you have replaced and do make clean followed by make right? – Umair Chaudhry Jul 28 '16 at 15:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.