cd /opt/tools/network_simulators/ns3/ns-allinone-3.26

 $: hg clone http://code.nsnam.org/jpelkey3/BRITE

 $: cd BRITE

 $: make


cd /opt/tools/network_simulators/ns3/ns-allinone-3.26

 $: hg clone http://code.nsnam.org/jpelkey3/ns-3-brite-modular

 $: cd ns-3-brite-modular

 $: ./waf configure --with-brite=/opt/tools/network_simulators/ns3/ns-allinone-3.26/BRITE --with-openflow=/opt/tools/network_simulators/ns3/ns-allinone-3.26/openflow

 $: ./waf

--------------------------------------------

../src/core/model/calendar-scheduler.cc:128:45: 错误:在 {} 内将‘-1’从‘int’转换为较窄的类型‘uint64_t {aka long unsigned int}’ [-Wnarrowing]

../src/core/model/calendar-scheduler.cc:128:45: 错误:在 {} 内将‘-1’从‘int’转换为较窄的类型‘uint32_t {aka unsigned int}’ [-Wnarrowing]

../src/core/model/calendar-scheduler.cc:157:45: 错误:在 {} 内将‘-1’从‘int’转换为较窄的类型‘uint64_t {aka long unsigned int}’ [-Wnarrowing]

../src/core/model/calendar-scheduler.cc:157:45: 错误:在 {} 内将‘-1’从‘int’转换为较窄的类型‘uint32_t {aka unsigned int}’ [-Wnarrowing]

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/core/model/calendar-scheduler.cc

--------------------------------------------

//  Scheduler::Event minEvent = { 0, { ~0, ~0}};

  Scheduler::Event minEvent = { 0, {(uint64_t) ~0,(uint32_t) ~0}};


//  Scheduler::Event minEvent = { 0, { ~0, ~0}};

  Scheduler::Event minEvent = { 0, {(uint64_t) ~0,(uint32_t) ~0}};

--------------------------------------------

 $: ./waf

--------------------------------------------

../src/core/model/unix-system-wall-clock-ms.cc:78:44: 错误:‘_SC_CLK_TCK’在此作用域中尚未声明

../src/core/model/unix-system-wall-clock-ms.cc:78:55: 错误:‘sysconf’在此作用域中尚未声明

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/core/model/unix-system-wall-clock-ms.cc

--------------------------------------------

#include <unistd.h>            // add the line

--------------------------------------------

 $: ./waf

--------------------------------------------

../src/network/utils/ipv6-address.cc:62:26: 错误:typedef ‘ub1’ locally defined but not used [-Werror=unused-local-typedefs]

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/network/utils/ipv6-address.cc

--------------------------------------------

//  typedef unsigned  char ub1;   /* unsigned 1-byte quantities */

--------------------------------------------

 $: ./waf

--------------------------------------------

../src/emu/model/emu-net-device.cc:462:15: 错误:‘::fork’未被声明

../utils/test-runner.cc:115:39: 错误:‘getcwd’在此作用域中尚未声明

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/emu/model/emu-net-device.cc

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/tap-bridge/model/tap-bridge.cc

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/netanim/model/animation-interface.cc

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/utils/test-runner.cc

--------------------------------------------

#include <unistd.h>            // add the line

--------------------------------------------

 $: ./waf

--------------------------------------------

../src/internet/model/ipv6-extension.cc:338:108: 错误:对‘make_pair(ns3::Ipv6Address&, uint32_t&)’的调用没有匹配的函数

../src/internet/model/ipv6-extension.cc:568:90: 错误:对‘make_pair(ns3::Ptr<ns3::Packet>&, uint16_t&)’的调用没有匹配的函数

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/internet/model/ipv6-extension.cc

--------------------------------------------

//  std::pair<Ipv6Address, uint32_t> fragmentsId = std::make_pair<Ipv6Address, uint32_t> (src, identification);

  std::pair<Ipv6Address, uint32_t> fragmentsId = std::pair<Ipv6Address, uint32_t> (src, identification);


//  m_fragments.insert (it, std::make_pair<Ptr<Packet>, uint16_t> (fragment, fragmentOffset));

  m_fragments.insert (it, std::pair<Ptr<Packet>, uint16_t> (fragment, fragmentOffset));

--------------------------------------------

 $: ./waf

--------------------------------------------

../src/wimax/model/bs-scheduler-rtps.cc:497:29: 错误:‘struct ns3::WimaxMacQueue::QueueElement’ is private within this context

../src/wimax/model/wimax-mac-queue.h:121:10: 附注:declared private here

   struct QueueElement

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/wimax/model/wimax-mac-queue.h

--------------------------------------------

//private:            // del the line

  struct QueueElement

  {

    ...

  };

private:            // add the line

--------------------------------------------

 $: ./waf

--------------------------------------------

debug/ns3/abort.h:100:7: 错误:nonnull argument ‘this’ compared to NULL [-Werror=nonnull-compare]

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/build/debug/ns3/abort.h

--------------------------------------------

      if (cond)                                                           \

修改为

      if ((cond) && 1)                                                           \

--------------------------------------------

../src/uan/model/uan-mac-cw.cc:126:37: 错误:comparison of constant ‘3’ with boolean expression is always false [-Werror=bool-compare]

--------------------------------------------

vim /opt/tools/network_simulators/ns3/ns-allinone-3.26/ns-3-brite-modular/src/uan/model/uan-mac-cw.cc

--------------------------------------------

//      if (m_txEndEvent.IsRunning () == TX)

      if (m_state == TX)

--------------------------------------------

 $: ./waf

--------------------------------------------


--------------------------------------------

So far, OK

--------------------------------------------