1. Descargar
wget -c --tries=0 http://www.nsnam.org/releases/ns-allinone-3.6.tar.bz2
2. Descomprimir
tar xvfj ns-allinone-3.6.tar.bz2
3. Instalar
./build.py
Dura casi 10'
4. (En construcción) Instalar paquetes adicionales:
aptitude install python-dev pkg-config valgrind
5. Cambiar de directorio:
cd ns-3.6
6. Ejecutar:
./waf -d optimized configure
Checking for program g++ : ok /usr/bin/g++
Checking for program cpp : ok /usr/bin/cpp
Checking for program ar : ok /usr/bin/ar
Checking for program ranlib : ok /usr/bin/ranlib
Checking for g++ : ok
Checking for program pkg-config : ok /usr/bin/pkg-config
Checking for regression reference traces : ok ../ns-3.6-ref-traces (guessed)
Checking for -Wno-error=deprecated-declarations support : yes
Checking for -Wl,--soname=foo support : yes
Checking for header stdlib.h : ok
Checking for header signal.h : ok
Checking for header pthread.h : ok
Checking for high precision time implementation : 128-bit integer
Checking for header stdint.h : ok
Checking for header inttypes.h : ok
Checking for header sys/inttypes.h : not found
Checking for library rt : ok
Checking for header netpacket/packet.h : ok
Checking for header linux/if_tun.h : ok
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Checking for pkg-config flags for GTK_CONFIG_STORE : not found
Package libxml-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libxml-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libxml-2.0' found
Checking for pkg-config flags for LIBXML2 : not found
Checking for library sqlite3 : not found
Checking for NSC location : not found
Checking for program python : ok /usr/bin/python
Checking for Python version >= 2.3 : ok 2.5.4
Checking for library python2.5 : ok
Checking for program python2.5-config : ok /usr/bin/python2.5-config
Checking for header Python.h : ok
Checking for -fvisibility=hidden support : yes
Checking for pybindgen location : not found
Checking for Python module pybindgen : not found
pybindgen missing => no python bindings
Checking for program sudo : ok /usr/bin/sudo
Checking for program hg : not found
Checking for program valgrind : ok /usr/bin/valgrind
Package gsl was not found in the pkg-config search path.
Perhaps you should add the directory containing `gsl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gsl' found
Checking for pkg-config flags for GSL : not found
---- Summary of optional NS-3 features:
Threading Primitives : enabled
Real Time Simulator : enabled
Emulated Net Device : enabled
Tap Bridge : enabled
GtkConfigStore : not enabled (library 'gtk+-2.0 >= 2.12' not found)
XmlIo : not enabled (library 'libxml-2.0 >= 2.7' not found)
SQlite stats data output : not enabled (library 'sqlite3' not found)
Network Simulation Cradle : not enabled (NSC not found (see option --with-nsc))
Python Bindings : not enabled (PyBindGen missing)
Use sudo to set suid bit : not enabled (option --enable-sudo not selected)
Build examples and samples : enabled
Static build : not enabled (option --enable-static not selected)
GNU Scientific Library (GSL) : not enabled (GSL not found)
'configure' finished successfully (2.091s)
7. Ejecutar:
./waf -d debug configurecd
Checking for program g++ : ok /usr/bin/g++
Checking for program cpp : ok /usr/bin/cpp
Checking for program ar : ok /usr/bin/ar
Checking for program ranlib : ok /usr/bin/ranlib
Checking for g++ : ok
Checking for program pkg-config : ok /usr/bin/pkg-config
Checking for regression reference traces : ok ../ns-3.6-ref-traces (guessed)
Checking for -Wno-error=deprecated-declarations support : yes
Checking for -Wl,--soname=foo support : yes
Checking for header stdlib.h : ok
Checking for header signal.h : ok
Checking for header pthread.h : ok
Checking for high precision time implementation : 128-bit integer
Checking for header stdint.h : ok
Checking for header inttypes.h : ok
Checking for header sys/inttypes.h : not found
Checking for library rt : ok
Checking for header netpacket/packet.h : ok
Checking for header linux/if_tun.h : ok
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Checking for pkg-config flags for GTK_CONFIG_STORE : not found
Package libxml-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libxml-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libxml-2.0' found
Checking for pkg-config flags for LIBXML2 : not found
Checking for library sqlite3 : not found
Checking for NSC location : not found
Checking for program python : ok /usr/bin/python
Checking for Python version >= 2.3 : ok 2.5.4
Checking for library python2.5 : ok
Checking for program python2.5-config : ok /usr/bin/python2.5-config
Checking for header Python.h : ok
Checking for -fvisibility=hidden support : yes
Checking for pybindgen location : not found
Checking for Python module pybindgen : not found
pybindgen missing => no python bindings
Checking for program sudo : ok /usr/bin/sudo
Checking for program hg : not found
Checking for program valgrind : ok /usr/bin/valgrind
Package gsl was not found in the pkg-config search path.
Perhaps you should add the directory containing `gsl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gsl' found
Checking for pkg-config flags for GSL : not found
---- Summary of optional NS-3 features:
Threading Primitives : enabled
Real Time Simulator : enabled
Emulated Net Device : enabled
Tap Bridge : enabled
GtkConfigStore : not enabled (library 'gtk+-2.0 >= 2.12' not found)
XmlIo : not enabled (library 'libxml-2.0 >= 2.7' not found)
SQlite stats data output : not enabled (library 'sqlite3' not found)
Network Simulation Cradle : not enabled (NSC not found (see option --with-nsc))
Python Bindings : not enabled (PyBindGen missing)
Use sudo to set suid bit : not enabled (option --enable-sudo not selected)
Build examples and samples : enabled
Static build : not enabled (option --enable-static not selected)
GNU Scientific Library (GSL) : not enabled (GSL not found)
'configure' finished successfully (2.176s)
8. Ejecutar:
./waf
...Waf: Leaving directory `/usr/local/src/ns-allinone-3.6/ns-3.6/build'
'build' finished successfully (8m57.246s)
9. Lanzar el comando:
./waf -d debug --enable-sudo configure
Checking for program g++ : ok /usr/bin/g++
Checking for program cpp : ok /usr/bin/cpp
Checking for program ar : ok /usr/bin/ar
Checking for program ranlib : ok /usr/bin/ranlib
Checking for g++ : ok
Checking for program pkg-config : ok /usr/bin/pkg-config
Checking for regression reference traces : ok ../ns-3.6-ref-traces (guessed)
Checking for -Wno-error=deprecated-declarations support : yes
Checking for -Wl,--soname=foo support : yes
Checking for header stdlib.h : ok
Checking for header signal.h : ok
Checking for header pthread.h : ok
Checking for high precision time implementation : 128-bit integer
Checking for header stdint.h : ok
Checking for header inttypes.h : ok
Checking for header sys/inttypes.h : not found
Checking for library rt : ok
Checking for header netpacket/packet.h : ok
Checking for header linux/if_tun.h : ok
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Checking for pkg-config flags for GTK_CONFIG_STORE : not found
Package libxml-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libxml-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libxml-2.0' found
Checking for pkg-config flags for LIBXML2 : not found
Checking for library sqlite3 : not found
Checking for NSC location : not found
Checking for program python : ok /usr/bin/python
Checking for Python version >= 2.3 : ok 2.5.4
Checking for library python2.5 : ok
Checking for program python2.5-config : ok /usr/bin/python2.5-config
Checking for header Python.h : ok
Checking for -fvisibility=hidden support : yes
Checking for pybindgen location : not found
Checking for Python module pybindgen : not found
pybindgen missing => no python bindings
Checking for program sudo : ok /usr/bin/sudo
Checking for program hg : not found
Checking for program valgrind : ok /usr/bin/valgrind
Package gsl was not found in the pkg-config search path.
Perhaps you should add the directory containing `gsl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gsl' found
Checking for pkg-config flags for GSL : not found
---- Summary of optional NS-3 features:
Threading Primitives : enabled
Real Time Simulator : enabled
Emulated Net Device : enabled
Tap Bridge : enabled
GtkConfigStore : not enabled (library 'gtk+-2.0 >= 2.12' not found)
XmlIo : not enabled (library 'libxml-2.0 >= 2.7' not found)
SQlite stats data output : not enabled (library 'sqlite3' not found)
Network Simulation Cradle : not enabled (NSC not found (see option --with-nsc))
Python Bindings : not enabled (PyBindGen missing)
Use sudo to set suid bit : enabled
Build examples and samples : enabled
Static build : not enabled (option --enable-static not selected)
GNU Scientific Library (GSL) : not enabled (GSL not found)
'configure' finished successfully (4.881s)
10. Comprobar la instalación:
./test.py -c core
Waf: Entering directory `/usr/local/src/ns-allinone-3.6/ns-3.6/build'
Waf: Leaving directory `/usr/local/src/ns-allinone-3.6/ns-3.6/build'
'build' finished successfully (0.586s)
PASS: TestSuite histogram
PASS: TestSuite ns3-wifi-interference
PASS: TestSuite sample
PASS: TestSuite devices-mesh-flame
PASS: TestSuite devices-mesh-dot11s
PASS: TestSuite devices-mesh
PASS: TestSuite ipv4-address-helper
PASS: TestSuite devices-wifi
PASS: TestSuite devices-wifi-dcf
PASS: TestSuite devices-wifi-tx-duration
PASS: TestSuite propagation-loss-model
PASS: TestSuite ipv6-list-routing
PASS: TestSuite ipv4-list-routing
PASS: TestSuite global-route-manager-impl
PASS: TestSuite olsr-routing
PASS: TestSuite devices-point-to-point
PASS: TestSuite ipv6-protocol
PASS: TestSuite ipv4-protocol
PASS: TestSuite udp
PASS: TestSuite tcp
PASS: TestSuite packetbb-test-suite
PASS: TestSuite drop-tail-queue
PASS: TestSuite ipv4-address-generator
PASS: TestSuite event-garbage-collector
PASS: TestSuite pcap-file-object
PASS: TestSuite packet
PASS: TestSuite packet-metadata
PASS: TestSuite buffer
PASS: TestSuite high-precision-128
PASS: TestSuite watchdog
PASS: TestSuite timer
PASS: TestSuite simulator
PASS: TestSuite time
PASS: TestSuite ptr
PASS: TestSuite traced-callback
PASS: TestSuite type-traits
PASS: TestSuite object-name-service
PASS: TestSuite callback
PASS: TestSuite attributes
PASS: TestSuite config
PASS: TestSuite global-value
PASS: TestSuite command-line
PASS: TestSuite basic-random-number
PASS: TestSuite object
44 of 44 tests passed (44 passed, 0 skipped, 0 failed, 0 crashed, 0 valgrind errors)
./waf --regression
Waf: Entering directory `/usr/local/src/ns-allinone-3.6/ns-3.6/build'
[450/472] regression-test (test-csma-bridge)
SKIP test-csma-bridge (Python bindings not available.)
[451/472] regression-test (test-csma-broadcast)
PASS test-csma-broadcast
[452/472] regression-test (test-csma-multicast)
PASS test-csma-multicast
[453/472] regression-test (test-csma-one-subnet)
PASS test-csma-one-subnet
[454/472] regression-test (test-csma-packet-socket)
PASS test-csma-packet-socket
[455/472] regression-test (test-csma-ping)
PASS test-csma-ping
[456/472] regression-test (test-csma-raw-ip-socket)
PASS test-csma-raw-ip-socket
[457/472] regression-test (test-csma-star)
PASS test-csma-star
[458/472] regression-test (test-dynamic-global-routing)
PASS test-dynamic-global-routing
[459/472] regression-test (test-global-routing-slash32)
PASS test-global-routing-slash32
[460/472] regression-test (test-ns2-mob)
PASS test-ns2-mob
[461/472] regression-test (test-realtime-udp-echo)
PASS test-realtime-udp-echo
[462/472] regression-test (test-second)
PASS test-second
[463/472] regression-test (test-simple-error-model)
PASS test-simple-error-model
[464/472] regression-test (test-simple-global-routing)
PASS test-simple-global-routing
[465/472] regression-test (test-simple-point-to-point-olsr)
PASS test-simple-point-to-point-olsr
[466/472] regression-test (test-static-routing-slash32)
PASS test-static-routing-slash32
[467/472] regression-test (test-tcp-large-transfer)
PASS test-tcp-large-transfer
[468/472] regression-test (test-tcp-nsc-lfn)
SKIP test-tcp-nsc-lfn (NSC not available)
[469/472] regression-test (test-third)
PASS test-third
[470/472] regression-test (test-udp-echo)
PASS test-udp-echo
[471/472] regression-test (test-wifi-wired-bridging)
PASS test-wifi-wired-bridging
[472/472] regression-test-collector
Regression testing summary:
SKIP: 2 of 22 tests have been skipped (test-csma-bridge, test-tcp-nsc-lfn)
PASS: 20 of 22 tests passed
Waf: Leaving directory `/usr/local/src/ns-allinone-3.6/ns-3.6/build'
'build' finished successfully (34.419s)
11. Ejecutar un guión de prueba:
./waf --run hello-simulator
Waf: Entering directory `/usr/local/src/ns-allinone-3.6/ns-3.6/build'
Waf: Leaving directory `/usr/local/src/ns-allinone-3.6/ns-3.6/build'
'build' finished successfully (0.704s)
Hello Simulator