[Ns-developers] NS-3.7 released

Gustavo Carneiro gjcarneiro at gmail.com
Wed Jan 27 06:30:34 PST 2010


On Wed, Jan 27, 2010 at 2:09 PM, <L.Wood at surrey.ac.uk> wrote:

> Build of ns-3.7-allinone failed. Traceback log below.
>
> build.py or ns-3.7/waf configure produce the same result.
>
> Looking at .waf-<blah>/wafadmin/Scripting.py, there are a lot
> of unescaped quotes (though \escaping them doesn't help), and
> several different quoting styles in use for error messages.
> Emacs is also showing me \033 round an error message...
>
> puzzled,
>

I am not entirely sure what is wrong, but this code that waf runs is at
fault:

# Get python version string
cmd = [python, "-c", "import sys\nfor x in sys.version_info: print(str(x))"]
debug('python: Running python command %r' % cmd)
proc = Utils.pproc.Popen(cmd, stdout=Utils.pproc.PIPE)
lines = proc.communicate()[0].split()
assert len(lines) == 5, "found %i lines, expected 5: %r" % (len(lines),
lines)

To check, create a tst.py file with this content:

import sys
for x in sys.version_info: print(str(x))


Then run it:

$ python /tmp/tst.py


It should print version information like:

2
6
4
final
0


Instead I suspect it is giving the error you see:

Unmatched ".


But I suspect this error comes from the python subprocess that is executed
to query version info.  For whatever reason.


> L.
>
> Checking for program python                             : ok
> /vol/ccsr/opnet/MIL3opnet15.0/15.0.A/sys/unix/bin/python
> Unmatched ".
> Traceback (most recent call last):
>  File "waf", line 148, in <module>
>    Scripting.prepare(t, cwd, VERSION, wafdir)
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Scripting.py",
> line 102, in prepare
>    prepare_impl(t,cwd,ver,wafdir)
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Scripting.py",
> line 95, in prepare_impl
>    main()
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Scripting.py",
> line 130, in main
>    fun(ctx)
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Scripting.py",
> line 168, in configure
>    conf.sub_config([''])
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Configure.py",
> line 103, in sub_config
>    self.recurse(k,name='configure')
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Utils.py",
> line 429, in recurse
>    f(self)
>  File "<string>", line 316, in configure
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Configure.py",
> line 103, in sub_config
>    self.recurse(k,name='configure')
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Utils.py",
> line 429, in recurse
>    f(self)
>  File "<string>", line 67, in configure
>  File
> "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/ns-3.7/.waf-1.5.9-d1e0349fc8937631a656fb8ea7e99063/wafadmin/Tools/python.py",
> line 217, in check_python_version
>    assert len(lines)==5,"found %i lines, expected 5: %r"%(len(lines),lines)
> AssertionError: found 0 lines, expected 5: []
> Traceback (most recent call last):
>  File "./build.py", line 117, in <module>
>    sys.exit(main(sys.argv))
>  File "./build.py", line 108, in main
>    build_ns3(config)
>  File "./build.py", line 55, in build_ns3
>    run_command(cmd)
>  File "/vol/ccsrmc/data1/lw0011-data/ns/ubuntu-2/ns-allinone-3.7/util.py",
> line 24, in run_command
>    raise CommandError("Command %r exited with code %i" % (argv, retval))
> util.CommandError: Command ['python', 'waf', 'configure',
> '--with-regression-traces', u'../ns-3.7-ref-traces', '--with-pybindgen',
> u'../pybindgen-0.12.0.710', '--with-nsc', u'../nsc-0.5.1'] exited with code
> 1
>
>
> <http://www.ee.surrey.ac.uk/Personal/L.Wood/><L.Wood at surrey.ac.uk>
>
>
>
> -----Original Message-----
> From: ns-developers-bounces at ISI.EDU on behalf of Faker Moatamri
> Sent: Wed 2010-01-27 12:41
> To: ns-developers at ISI.EDU; ns-3-users at googlegroups.com
> Subject: [Ns-developers] NS-3.7 released
>
> Release 3.7
> ===========
>
> Availability
> ------------
> This release is immediately available from:
> http://www.nsnam.org/releases/ns-allinone-3.7.tar.bz2
>
> Supported platforms
> -------------------
> ns-3.7 has been tested on the following platforms:
>  - linux x86 gcc 4.4.0, 4.3.2, 4.2, 4.1.1, 4.1 and 3.4.6 (debug and
> optimized)
>  - linux x86_64 gcc 4.4.0, 4.3.2, 4.2.4, 4.2.3, 4.2.1, 4.1.3, 3.4.6
> (debug and optimized)
>  - MacOS X ppc gcc 4.0.x and 4.2.x (debug and optimized)
>  - cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized)
>
> Unofficially supported platform
> -------------------
> - mingw gcc 3.4.5 (debug only)
>
> Not all ns-3 options are available on all platforms; consult the
> wiki for more information:
> http://www.nsnam.org/wiki/index.php/Installation
>
> New user-visible features
> -------------------------
>
>  a) Ad hoc On-Demand Distance Vector (AODV) routing model (RFC 3561)
>
>  b) IPv6 extensions support to add IPv6 extensions and options.  Two
>     examples (fragmentation and loose routing) are available.
>
>  c) NetAnim interface: Provides an interface to the Qt-based NetAnim
>     animator, which supports static, point-to-point topology-based
>     packet animations.
>
>  d) New topology helpers have been introduced
>     - PointToPointDumbbellHelper
>     - PointToPointGridHelper
>     - PointToPointStarHelper
>     - CsmaStarHelper
>
>  e) Equal-cost multipath for global routing: Enables quagga's equal
>     cost multipath for Ipv4GlobalRouting, and adds an attribute that
>     can enable it with random packet distribution policy across
>     equal cost routes.
>
>  f) Binding sockets to devices:  A method analogous to a SO_BINDTODEVICE
>     socket option has been introduced to class Socket
>
>  g) Object::DoStart: Users who need to complete their object setup at
>     the start of a simulation can override this virtual method, perform
> their
>     adhoc setup, and then, must chain up to their parent.
>
>  h) Ipv4::IsDestinationAddress method added to support checks of whether a
>     destination address should be accepted as one of the host's own
>     addresses.
>
>  i) UniformDiscPositionAllocator added; distributes uniformly the nodes
>     within a disc of given radius.
>
>  j) ChannelNumber attribute added to YansWifiPhy. Now it is possible to
>     setup wifi channel using WifiPhyHelper::Set() method.
>
>  k) WaypointMobilityModel provides a method to add mobility as a set of
>     (time, position) pairs
>
>  l) 802.11p WiFi standards
>
>  m) UDP Client/Server application
>
>  n) Support transactions in the SQLite output interface, making it
> usable for larger amounts of data
>
> API changes from ns-3.6
> -----------------------
> API changes for this release are documented in the file CHANGES.html.
>
> Bugs fixed
> ----------
> The following lists many of the bugs that were fixed since ns-3.6, in
> many cases referencing the Bugzilla bug number
>   - bug 752: Object::DoStart is not executed for objects created at t > 0
>   - bug 767:  Incorrect modulation for 802.11a modes
>   - bug 725: wifi fragmentation and RTS cannot be used at the same time
>   - bug 782: CreateTap () requires IP address in modes other than
>     CONFIGURE_LOCAL.
>   - bug 769: Queue::GetTotalReceived{Bytes,Packets}() broken
>   - bug 738 ReceiveErrorModel called too late
>   - Fix NSC improper response to FIN
>   - Fixed bug in serialization of PbbAddressBlock.
>   - Fix bug 780 (problem in RoutingTableComputation with asymetric links),
>     while adding debugging methods to OLSR.
>   - bug 759: Ipv6 uses wrong outgoing interface.
>   - bug 770: IPv6 size calculation for unknown options is wrong.
>   - bug 771: Radvd does not set ttl value.
>   - Fix bug 606:  Arp depends on IP routing system
>   - pad out CSMA payloads to 46 bytes if needed
>   - Drop CSMA packets with CRC errors, rescan, dox tweaks
>   - Add FCS capability to CSMA
>   - Mesh:Dot11s: fixed airtime metric
>   - Get emu working again:  Add Dix/Llc option, add and use contextual
>     realtime schedule ops, don't refcount realtime simulator impl
>   - bug 695 - DcfManager::UpdateBackoff () uses slow HighPrecision::Div()
>   - bug 674 - EIFS is not handled correctly in
> DcfManager::GetAccessGrantStart
>   - bug 739 -  OLSR: Strange HTime value in HELLO messages
>   - bug 746 -  UDP source address is not set to bound address
>   - bug 735 Update Olsr for local delivery
>   - bug 740 OLSR MprCompute () works wrong: fixed
>   - bug 729 Enable IPv6 over PPP.
>   - bug 645: fixes for opening stats file with OMNeT++
>   - bug 689: default energy detection and CCA thresholds are changed to be
>     more realistic.
>   - bug 733: OLSR MPR Computation give incorrect result
>   - Mesh: HWMP: fixed proactive routes
>   - Mesh: fixed FLAME PATH_UPDATE procedure, fixed mesh.cc
>
> Known issues
> ------------
> ns-3 builds have been known to fail on the following platforms:
>  - gcc 3.3 and earlier
>  - optimized builds on gcc 3.4.4 and 3.4.5
>  - optimized builds on linux x86 gcc 4.0.x
>
> Known bugs:
> ------------
> - bug 555: DCF immediate access bug
> - bug 706: Backoff counting when starting NS
> - bug 731: Send function in point-to-point-net-device fails to check the
> return value of the Dequeue function
> - bug 737: Backoff procedure is not invoked when transmission is deferred
> - bug 747: Listening TCP socket closes on RST
> - bug 748: Cloned TCP socket uses wrong source address
> - bug 761: Wrong ACK/CTSTimeout values
> - bug 772: AODV is unable to correctly buffer packets waiting for route
> reply
> - bug 777: AODV ignores specified outgoing interface in RouteOutput()
> - bug 778: OLSR ignores specified outgoing interface in RouteOutput()
> - bug 788: OLSR_NEIGH_HOLD_TIME should be 3 times OLSR_REFRESH_INTERVAL
> - bug 794: Ipv4Mask constructor for "/yy"-notation is wrong
>
>
>


-- 
Gustavo J. A. M. Carneiro
INESC Porto, Telecommunications and Multimedia Unit
"The universe is always one step beyond logic." -- Frank Herbert


More information about the Ns-developers mailing list