Ns-allinone-2.27 universal edition installation highlights and solutions:
Checking system version (for dynamic loading).../configure: line 7624: syntax error near unexpected token ')'
./Configure: lline 7624: 'osf *)'
Tcl8.3.2 configuration failed! Exiting...
Solution:
Replace. relid'' with. relid' in the following file ':
Ns-allinone-2.27/tcl8.4.5/unix/configure
Ns-allinone-2.27/tcl8.4.5/unix/tcl. m4
Ns-allinone-2.27/tk8.4.5/unix/configure
Ns-allinone-2.27/tk8.4.5/unix/tcl. m4
Ns-allinone-2.27/otcl-1.8/configure
Problem:
Clcl-mappings.h: In static member function 'static int TclObjectHelper <T>: dispatch _ (void *, Tcl_Interp *, int, char **)':
Tclcl-mappings.h: 51: error: incomplete type 'tcl 'used in nested name specifier
Tclcl-mappings.h: 52: error: invalid use of undefined type 'struct Tcl'
Tclcl-mappings.h: 41: error: forward declaration of 'struct Tcl'
Tclcl-mappings.h: 57: error: invalid use of undefined type 'struct Tcl'
Tclcl-mappings.h: 41: error: forward declaration of 'struct Tcl'
Make: *** [Tcl. o] Error 1
Tclcl-1.15 make failed! Exiting
Solution:
Download the appropriate gcc installation pudding and then install it. Place the patch in the same directory as the ns-allinone-2.27 for the following operations:
1. get a fresh ns-allinone-2.27.tar.gz
2. tar zxvf ns-allinone-2.27.tar.gz
3. patch-p0 <ns227-gcc34.patch
4. cd ns-allinone-2.27
5../install
Problem:
./Sctp. h: 632: Error: there are additional limits: 'sctpagent: 'on the member 'dumpsendbuffer'
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [trace/trace. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/sctp. h
Void SctpAgent: DumpSendBuffer ();
Changed:
Void DumpSendBuffer ();
Problem: solution:
./Mobile/god. h: At global scope:
./Mobile/god. h: 88: Error: there are additional limitations: 'vector: 'on the member 'operator ='
./Mobile/god. h: 93: Error: there are additional limitations: 'vector: 'on the member 'operator + ='
./Mobile/god. h: 98: Error: there are additional limitations: 'vector: 'on the member 'operator ='
./Mobile/god. h: 101: Error: there are additional limitations: 'vector: 'In the member 'operator! = 'Upper
Make: *** [src_rtg/sragent. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/mobile/god. h
Inline void vector: operator = (const vector)
Inline void vector: operator + = (const vector)
Inline int vector: operator = (const vector)
Inline int vector: operator! = (Const vector)
Changed:
Inline void operator = (const vector)
Inline void operator + = (const vector)
Inline int operator = (const vector)
Inline int operator! = (Const vector)
Problem:
Queue/cbq. cc: 112: Error: iso c ++ does not allow the declaration of non-type 'cbqueue'
Queue/cbq. cc: 112: Error: expected '; 'before' *' token
Queue/cbq. cc: In member function 'virtual int CBQueue: insert_class (CBQClass *)':
Queue/cbq. cc: 488: Error: 'class cbqclass' does not have a member named 'cbq _'
Queue/cbq. cc: In constructor 'cbqclass: CBQClass ()':
Queue/cbq. cc: 805: error: the class 'cbqclass' does not have a field named 'cbq _ '.
Queue/cbq. cc: In member function 'virtual void CBQClass: recv (Packet *, Handler *)':
Queue/cbq. cc: 850: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: 856: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'void CBQClass: update (Packet *, double )':
Queue/cbq. cc: 873: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'int CBQClass: desc_with_demand ()':
Queue/cbq. cc: 928: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'void CBQClass: newallot (double )':
Queue/cbq. cc: 975: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'virtual int CBQClass: command (int, const char * const *)':
Queue/cbq. cc: 1002: Error: 'cbq _ 'has not been declared in this scope
Make: *** [queue/cbq. o] Error 1
Ns make failed!
Solution: (+ is to add (marked in red below),-is to remove (marked in blue below ))
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/queue/cbq. cc
# Define POWEROFTWO 16
+ Class CBQueue;
Class CBQClass: public Connector {
Problem:
./Tora/tora_neighbor.h: 72: Error: iso c ++ does not allow declarations of non-type 'toraagent'
./Tora/tora_neighbor.h: 72: Error: expected '; 'before' * 'token
Tora/tora. cc: In member function 'void toraAgent: rt_resolve (Packet *)':
Tora/tora. cc: 238: Warning: conversion from String constant to 'Char * 'is not recommended
Tora/tora. cc: In member function 'void toraAgent: recvUPD (Packet *)':
Tora/tora. cc: 462: Warning: conversion from String constant to 'Char * 'is not recommended
Tora/tora. cc: In member function 'void toraAgent: recvCLR (Packet *)':
Tora/tora. cc: 648: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [tora/tora. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/tora/tora_neighbor.h
# Define _ tora_neighbor_h __
+ Class toraAgent;
Enum LinkStatus {
Problem:
Dsr/dsragent. cc: 787: Error: 'xmitflowfailurecallback' has not been declared in this scope
Dsr/dsragent. cc: 1344: Error: 'xmitfailurecallback' has not been declared in this scope
Make: *** [dsr/dsragent. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/dsr/dsragent. cc
+ Void XmitFlowFailureCallback (Packet * pkt, void * data );
+ Void XmitFailureCallback (Packet * pkt, void * data );
/* ===================================================== ============================================
SendBuf management and helpers
Problem:
Diffusion/diffusion. cc: 404: Error: 'xmitfailedcallback' has not been declared in this scope
Make: *** [diffusion/diffusion. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2. ns-allinone-2.27/ns-2.27/diffusion. cc
# Include "routing_table.h"
+ Void XmitFailedCallback (Packet * pkt, void * data );
Char * MsgStr [] = {"", "INTEREST", "DATA", "DATA_READY", "DATA_REQUEST ",
Problem:
Diffusion/omni_mcast.cc: 367: Error: 'ommnimcastxmitfailedcallback' has not been declared in this scope
Make: *** [diffusion/omni_mcast.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/diffusion/omni_mcast.cc
# Include "god. h"
+ Void OmniMcastXmitFailedCallback (Packet * pkt, void * data );
Static class OmniMcastClass: public TclClass {
Problem:
Tcp/tcp-sack-rh.cc: 68: Error: there are additional limits 'sackrhtcpagent: 'on member 'newack'
Make: *** [tcp/tcp-sack-rh.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/tcp/tcp-sack-rh.cc
Virtual void computefack ();
// Virtual void SackRHTcpAgent: newack (Packet * pkt );
+ Virtual void newack (Packet * pkt );
Problem:
Pgm/pgm-agent.cc: 278: Error: there are additional limits 'pgmagent: 'on the member 'trace _ event'
Pgm/pgm-agent.cc: In member function 'void PgmAgent: handle_rdata (Packet *)':
Pgm/pgm-agent.cc: 578: Warning: conversion from String constant to 'Char * 'is not recommended
Pgm/pgm-agent.cc: In member function 'void PgmAgent: handle_nak (Packet *)':
Pgm/pgm-agent.cc: 727: Warning: conversion from String constant to 'Char * 'is not recommended
Pgm/pgm-agent.cc: In member function 'void PgmAgent: handle_ncf (Packet *)':
Pgm/pgm-agent.cc: 824: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [pgm/pgm-agent.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/pgm/pgm-agent.cc
Void print_stats ();
-// Void PgmAgent: trace_event (char * evType, double evTime );
+ Void trace_event (char * evType, double evTime );
Problem:
Pgm/pgm-sender.cc: 160: Error: there are additional limits 'pgmsender: 'on the member 'trace _ event'
Pgm/pgm-sender.cc: In member function 'virtual void PgmSender: handle_nak (Packet *)':
Pgm/pgm-sender.cc: 472: Warning: conversion from String constant to 'Char * 'is not recommended
Pgm/pgm-sender.cc: In member function 'virtual void PgmSender: send_rdata (RdataItem *)':
Pgm/pgm-sender.cc: 619: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [pgm/pgm-sender.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/pgm/pgm-sender.cc
-// Void PgmSender: trace_event (char * evType, nsaddr_t daddr, double evTime );
+ Void trace_event (char * evType, nsaddr_t daddr, double evTime );
Problem:
Pgm/pgm-receiver.cc: 157: Error: there are additional limits 'pgmexper: 'on the member 'trace _ event'
Pgm/pgm-receiver.cc: In member function 'void PgmReceiver: generate_Nak (int )':
Pgm/pgm-receiver.cc: 589: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [pgm/pgm-receiver.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/pgm/pgm-receiver.cc
-Void PgmReceiver: trace_event (char * evType, double evTime );
+ Void trace_event (char * evType, double evTime );
Problem:
./Diffusion3/filter_core/filter_core.hh: 111: Error: expected ') 'before' * 'token
Make: *** [diffusion3/ns/diffagent. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/diffusion3/filter_core/filter_core.hh
Class NeighborEntry;
+ Class DiffRoutingAgent;
Typedef list <NeighborEntry *> NeighborList;
The original installed good ns-allinone-2.33 was I got collapsed, had to install a ns-allinone-2.27 universal edition. Who knows, it is estimated that all the installation problems that can be encountered by NS2. from the very beginning, the installation package had such or other problems.
Record it, so you won't forget it later. Some errors are really BT, and the solution for searching on the Internet is also BT. I don't know how they come up with it, hehe.
Problem:
Checking system version (for dynamic loading).../configure: line 7624: syntax error near unexpected token ')'
./Configure: lline 7624: 'osf *)'
Tcl8.3.2 configuration failed! Exiting...
Solution:
Replace. relid'' with. relid' in the following file ':
Ns-allinone-2.27/tcl8.4.5/unix/configure
Ns-allinone-2.27/tcl8.4.5/unix/tcl. m4
Ns-allinone-2.27/tk8.4.5/unix/configure
Ns-allinone-2.27/tk8.4.5/unix/tcl. m4
Ns-allinone-2.27/otcl-1.8/configure
Problem:
Clcl-mappings.h: In static member function 'static int TclObjectHelper <T>: dispatch _ (void *, Tcl_Interp *, int, char **)':
Tclcl-mappings.h: 51: error: incomplete type 'tcl 'used in nested name specifier
Tclcl-mappings.h: 52: error: invalid use of undefined type 'struct Tcl'
Tclcl-mappings.h: 41: error: forward declaration of 'struct Tcl'
Tclcl-mappings.h: 57: error: invalid use of undefined type 'struct Tcl'
Tclcl-mappings.h: 41: error: forward declaration of 'struct Tcl'
Make: *** [Tcl. o] Error 1
Tclcl-1.15 make failed! Exiting
Solution:
Download the appropriate gcc installation pudding and then install it. Place the patch in the same directory as the ns-allinone-2.27 for the following operations:
1. get a fresh ns-allinone-2.27.tar.gz
2. tar zxvf ns-allinone-2.27.tar.gz
3. patch-p0 <ns227-gcc34.patch
4. cd ns-allinone-2.27
5../install
Problem:
./Sctp. h: 632: Error: there are additional limits: 'sctpagent: 'on the member 'dumpsendbuffer'
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Trace/trace. cc: 185: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [trace/trace. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/sctp. h
Void SctpAgent: DumpSendBuffer ();
Changed:
Void DumpSendBuffer ();
Problem: solution:
./Mobile/god. h: At global scope:
./Mobile/god. h: 88: Error: there are additional limitations: 'vector: 'on the member 'operator ='
./Mobile/god. h: 93: Error: there are additional limitations: 'vector: 'on the member 'operator + ='
./Mobile/god. h: 98: Error: there are additional limitations: 'vector: 'on the member 'operator ='
./Mobile/god. h: 101: Error: there are additional limitations: 'vector: 'In the member 'operator! = 'Upper
Make: *** [src_rtg/sragent. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/mobile/god. h
Inline void vector: operator = (const vector)
Inline void vector: operator + = (const vector)
Inline int vector: operator = (const vector)
Inline int vector: operator! = (Const vector)
Changed:
Inline void operator = (const vector)
Inline void operator + = (const vector)
Inline int operator = (const vector)
Inline int operator! = (Const vector)
Problem:
Queue/cbq. cc: 112: Error: iso c ++ does not allow the declaration of non-type 'cbqueue'
Queue/cbq. cc: 112: Error: expected '; 'before' *' token
Queue/cbq. cc: In member function 'virtual int CBQueue: insert_class (CBQClass *)':
Queue/cbq. cc: 488: Error: 'class cbqclass' does not have a member named 'cbq _'
Queue/cbq. cc: In constructor 'cbqclass: CBQClass ()':
Queue/cbq. cc: 805: error: the class 'cbqclass' does not have a field named 'cbq _ '.
Queue/cbq. cc: In member function 'virtual void CBQClass: recv (Packet *, Handler *)':
Queue/cbq. cc: 850: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: 856: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'void CBQClass: update (Packet *, double )':
Queue/cbq. cc: 873: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'int CBQClass: desc_with_demand ()':
Queue/cbq. cc: 928: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'void CBQClass: newallot (double )':
Queue/cbq. cc: 975: Error: 'cbq _ 'has not been declared in this scope
Queue/cbq. cc: In member function 'virtual int CBQClass: command (int, const char * const *)':
Queue/cbq. cc: 1002: Error: 'cbq _ 'has not been declared in this scope
Make: *** [queue/cbq. o] Error 1
Ns make failed!
Solution: (+ is to add,-is to remove)
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/queue/cbq. cc
# Define POWEROFTWO 16
+ Class CBQueue;
Class CBQClass: public Connector {
Problem:
./Tora/tora_neighbor.h: 72: Error: iso c ++ does not allow declarations of non-type 'toraagent'
./Tora/tora_neighbor.h: 72: Error: expected '; 'before' * 'token
Tora/tora. cc: In member function 'void toraAgent: rt_resolve (Packet *)':
Tora/tora. cc: 238: Warning: conversion from String constant to 'Char * 'is not recommended
Tora/tora. cc: In member function 'void toraAgent: recvUPD (Packet *)':
Tora/tora. cc: 462: Warning: conversion from String constant to 'Char * 'is not recommended
Tora/tora. cc: In member function 'void toraAgent: recvCLR (Packet *)':
Tora/tora. cc: 648: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [tora/tora. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/tora/tora_neighbor.h
# Define _ tora_neighbor_h __
+ Class toraAgent;
Enum LinkStatus {
Problem:
Dsr/dsragent. cc: 787: Error: 'xmitflowfailurecallback' has not been declared in this scope
Dsr/dsragent. cc: 1344: Error: 'xmitfailurecallback' has not been declared in this scope
Make: *** [dsr/dsragent. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/dsr/dsragent. cc
+ Void XmitFlowFailureCallback (Packet * pkt, void * data );
+ Void XmitFailureCallback (Packet * pkt, void * data );
/* ===================================================== ============================================
SendBuf management and helpers
Problem:
Diffusion/diffusion. cc: 404: Error: 'xmitfailedcallback' has not been declared in this scope
Make: *** [diffusion/diffusion. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2. ns-allinone-2.27/ns-2.27/diffusion. cc
# Include "routing_table.h"
+ Void XmitFailedCallback (Packet * pkt, void * data );
Char * MsgStr [] = {"", "INTEREST", "DATA", "DATA_READY", "DATA_REQUEST ",
Problem:
Diffusion/omni_mcast.cc: 367: Error: 'ommnimcastxmitfailedcallback' has not been declared in this scope
Make: *** [diffusion/omni_mcast.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/diffusion/omni_mcast.cc
# Include "god. h"
+ Void OmniMcastXmitFailedCallback (Packet * pkt, void * data );
Static class OmniMcastClass: public TclClass {
Problem:
Tcp/tcp-sack-rh.cc: 68: Error: there are additional limits 'sackrhtcpagent: 'on member 'newack'
Make: *** [tcp/tcp-sack-rh.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/tcp/tcp-sack-rh.cc
Virtual void computefack ();
// Virtual void SackRHTcpAgent: newack (Packet * pkt );
+ Virtual void newack (Packet * pkt );
Problem:
Pgm/pgm-agent.cc: 278: Error: there are additional limits 'pgmagent: 'on the member 'trace _ event'
Pgm/pgm-agent.cc: In member function 'void PgmAgent: handle_rdata (Packet *)':
Pgm/pgm-agent.cc: 578: Warning: conversion from String constant to 'Char * 'is not recommended
Pgm/pgm-agent.cc: In member function 'void PgmAgent: handle_nak (Packet *)':
Pgm/pgm-agent.cc: 727: Warning: conversion from String constant to 'Char * 'is not recommended
Pgm/pgm-agent.cc: In member function 'void PgmAgent: handle_ncf (Packet *)':
Pgm/pgm-agent.cc: 824: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [pgm/pgm-agent.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/pgm/pgm-agent.cc
Void print_stats ();
-// Void PgmAgent: trace_event (char * evType, double evTime );
+ Void trace_event (char * evType, double evTime );
Problem:
Pgm/pgm-sender.cc: 160: Error: there are additional limits 'pgmsender: 'on the member 'trace _ event'
Pgm/pgm-sender.cc: In member function 'virtual void PgmSender: handle_nak (Packet *)':
Pgm/pgm-sender.cc: 472: Warning: conversion from String constant to 'Char * 'is not recommended
Pgm/pgm-sender.cc: In member function 'virtual void PgmSender: send_rdata (RdataItem *)':
Pgm/pgm-sender.cc: 619: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [pgm/pgm-sender.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/pgm/pgm-sender.cc
-// Void PgmSender: trace_event (char * evType, nsaddr_t daddr, double evTime );
+ Void trace_event (char * evType, nsaddr_t daddr, double evTime );
Problem:
Pgm/pgm-receiver.cc: 157: Error: there are additional limits 'pgmexper: 'on the member 'trace _ event'
Pgm/pgm-receiver.cc: In member function 'void PgmReceiver: generate_Nak (int )':
Pgm/pgm-receiver.cc: 589: Warning: conversion from String constant to 'Char * 'is not recommended
Make: *** [pgm/pgm-receiver.o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/int32/ns-allinone-2.27/ns-2.27/pgm/pgm-receiver.cc
-Void PgmReceiver: trace_event (char * evType, double evTime );
+ Void trace_event (char * evType, double evTime );
Problem:
./Diffusion3/filter_core/filter_core.hh: 111: Error: expected ') 'before' * 'token
Make: *** [diffusion3/ns/diffagent. o] Error 1
Ns make failed!
Solution:
$ Gedit/usr/NS2./ns-allinone-2.27/ns-2.27/diffusion3/filter_core/filter_core.hh
Class NeighborEntry;
+ Class DiffRoutingAgent;
Typedef list <NeighborEntry *> NeighborList;