ns-3 installation on Mac OS X Mavericks (10.9)

3,239 views
Skip to first unread message

Miguel Oliveira

unread,
Mar 5, 2014, 5:24:57 AM3/5/14
to ns-3-...@googlegroups.com
Hi

I am trying to install ns3 on a Mac with Mavericks but I am having problems.
Can someone tell me all the packages that I need to install before building ns3???

Thanks!

Konstantinos

unread,
Mar 5, 2014, 5:32:43 AM3/5/14
to ns-3-...@googlegroups.com
Which release of ns-3 are you trying to install? Only ns-3.18.1 and any future releases can be used since OS X 10.9 has changed the compiler to clang.

Miguel Oliveira

unread,
Mar 5, 2014, 5:54:24 AM3/5/14
to ns-3-...@googlegroups.com
I am trying to install the last release 3.19.
In that tutorial it says that I need to install Xcode and Command line tools, but I already have those.
But is there any other package that I need to install before building the ns3 code?

Thanks!

Konstantinos

unread,
Mar 5, 2014, 6:00:37 AM3/5/14
to ns-3-...@googlegroups.com
When you do ./waf configure, what is the output?
This will state which libraries are missing etc.

Miguel Oliveira

unread,
Mar 5, 2014, 7:55:27 AM3/5/14
to ns-3-...@googlegroups.com

Here is the output when I run this command: ./waf -d optimized --enable-examples --enable-tests configure



Setting top to                           : /Users/miguel/Desktop/ns-allinone-3.19/ns-3.19 

Setting out to                           : /Users/miguel/Desktop/ns-allinone-3.19/ns-3.19/build 

Checking for 'gcc' (c compiler)          : /usr/bin/gcc 

Checking for cc version                  : 5.0.0 

Checking for 'g++' (c++ compiler)        : /usr/bin/g++ 

Checking for compilation flag -march=native... support : ok 

Checking for program python                            : /usr/bin/python 

Checking for python version                            : (2, 7, 5, 'final', 0) 

Checking for library python2.7 in LIBDIR               : not found 

Checking for library python2.7 in python_LIBPL         : not found 

Checking for library python2.7 in $prefix/libs         : not found 

Checking for library python2.7m in LIBDIR              : not found 

Checking for library python2.7m in python_LIBPL        : not found 

Checking for library python2.7m in $prefix/libs        : not found 

Checking for library python27 in LIBDIR                : not found 

Checking for library python27 in python_LIBPL          : not found 

Checking for library python27 in $prefix/libs          : not found 

Checking for program /usr/bin/python-config,python2.7-config,python-config-2.7,python2.7m-config : /usr/bin/python-config 

Checking for header Python.h                                                                     : :-( 

Asking python-config for pyembed --cflags flags                                                  : yes 

Asking python-config for pyembed --libs flags                                                    : yes 

Asking python-config for pyembed --ldflags flags                                                 : yes 

Getting pyembed flags from python-config                                                         : Could not build a python embedded interpreter 

Checking boost includes                                                                          : not found 

Checking boost includes                                                                          : not found 

Checking for click location                                                                      : not found 

Checking for program pkg-config                                                                  : not found 

Checking for program pkg-config                                                                  : not found 

Checking for type uint128_t                                                                      : not found 

Checking for type __uint128_t                                                                    : yes 

Checking high precision time implementation                                                      : 128-bit integer 

Checking for header stdint.h                                                                     : yes 

Checking for header inttypes.h                                                                   : yes 

Checking for header sys/inttypes.h                                                               : not found 

Checking for header sys/types.h                                                                  : yes 

Checking for header sys/stat.h                                                                   : yes 

Checking for header dirent.h                                                                     : yes 

Checking for header stdlib.h                                                                     : yes 

Checking for header signal.h                                                                     : yes 

Checking for header pthread.h                                                                    : yes 

Checking for header stdint.h                                                                     : yes 

Checking for header inttypes.h                                                                   : yes 

Checking for header sys/inttypes.h                                                               : not found 

Checking for library rt                                                                          : not found 

Checking for header netpacket/packet.h                                                           : not found 

Checking for header sys/ioctl.h                                                                  : yes 

Checking for header net/if.h                                                                     : yes 

Checking for header net/ethernet.h                                                               : yes 

Checking for header linux/if_tun.h                                                               : not found 

Checking for header netpacket/packet.h                                                           : not found 

Checking for NSC location                                                                        : not found 

Checking for program pkg-config                                                                  : not found 

Checking for header linux/if_tun.h                                                               : not found 

Checking for program sudo                                                                        : /usr/bin/sudo 

Checking for program valgrind                                                                    : not found 

Checking for program pkg-config                                                                  : not found 

Checking for compilation flag -Wno-error=deprecated-d... support                                 : ok 

Checking for compilation flag -Wno-error=deprecated-d... support                                 : ok 

Checking for compilation flag -fstrict-aliasing... support                                       : ok 

Checking for compilation flag -fstrict-aliasing... support                                       : ok 

Checking for compilation flag -Wstrict-aliasing... support                                       : ok 

Checking for compilation flag -Wstrict-aliasing... support                                       : ok 

Checking for program doxygen                                                                     : not found 

---- Summary of optional NS-3 features:

Python Bindings               : not enabled (Python library or headers missing)

BRITE Integration             : not enabled (BRITE not enabled (see option --with-brite))

NS-3 Click Integration        : not enabled (nsclick not enabled (see option --with-nsclick))

GtkConfigStore                : not enabled (library 'gtk+-2.0 >= 2.12' not found)

XmlIo                         : not enabled (library 'libxml-2.0 >= 2.7' not found)

Threading Primitives          : enabled

Real Time Simulator           : not enabled (librt is not available)

Emulated Net Device           : not enabled (<netpacket/packet.h> include not detected)

File descriptor NetDevice     : enabled

Tap FdNetDevice               : not enabled (needs linux/if_tun.h)

Emulation FdNetDevice         : not enabled (needs netpacket/packet.h)

PlanetLab FdNetDevice         : not enabled (PlanetLab operating system not detected (see option --force-planetlab))

Network Simulation Cradle     : not enabled (NSC not found (see option --with-nsc))

MPI Support                   : not enabled (option --enable-mpi not selected)

NS-3 OpenFlow Integration     : not enabled (Required boost libraries not found)

SQlite stats data output      : not enabled (library 'sqlite3' not found)

Tap Bridge                    : not enabled (<linux/if_tun.h> include not detected)

PyViz visualizer              : not enabled (Python Bindings are needed but not enabled)

Use sudo to set suid bit      : not enabled (option --enable-sudo not selected)

Build tests                   : enabled

Build examples                : enabled

GNU Scientific Library (GSL)  : not enabled (GSL not found)

'configure' finished successfully (3.401s)

Konstantinos

unread,
Mar 5, 2014, 8:17:35 AM3/5/14
to ns-3-...@googlegroups.com
Alright, it seems that you miss Python which is required for the basic ns-3
Try to install the 2.7 version and not the Python3. http://www.python.org/download/

After the ./waf configure, if you build it with ./waf what do you get? 

Miguel Oliveira

unread,
Mar 5, 2014, 8:37:03 AM3/5/14
to ns-3-...@googlegroups.com
But I think I have python 2.7 installed.
When I run the command "python -V" the output is "Python 2.7.5".
Do you think there are some python libraries missing?

thanks!

Tom Henderson

unread,
Mar 5, 2014, 8:44:25 AM3/5/14
to ns-3-...@googlegroups.com
On 03/05/2014 05:37 AM, Miguel Oliveira wrote:
> But I think I have python 2.7 installed.
> When I run the command "python -V" the output is "Python 2.7.5".
> Do you think there are some python libraries missing?
>
> thanks!
>

Yes, you are missing Python development libraries. This is not a
requirement to use ns-3 with C++, but is a requirement to compile the
bindings necessary to use Python programs instead of C++.

There seem to be multiple ways to install a development version of
Python on Mavericks, so I'd recommend to search and read up on it if you
want to install. I've recently used homebrew for this:
http://docs.python-guide.org/en/latest/starting/install/osx/

However, you can skip this if C++ is sufficient.

- Tom

Miguel Oliveira

unread,
Mar 11, 2014, 4:38:57 PM3/11/14
to ns-3-...@googlegroups.com
Hi thanks
I managed to install python.
But now I am having some problems with the Visualizer.

It says that gtk+ is not found, but it is installed.
The same is happening with Sqlite3.
Do you know how to solve this?

Konstantinos

unread,
Mar 11, 2014, 4:41:47 PM3/11/14
to ns-3-...@googlegroups.com
I would suggest to use NetAnim as visualiser, instead of PyViz. 
It is more actively developed and IMHO it provides more capabilities.

Miguel Oliveira

unread,
Mar 11, 2014, 4:54:19 PM3/11/14
to ns-3-...@googlegroups.com
What about sqlite3? Do you have it enabled?
Thanks

Konstantinos

unread,
Mar 11, 2014, 5:32:07 PM3/11/14
to ns-3-...@googlegroups.com
Not necessarily. Personally I have it, but it is not needed for all simulations, only for the statistics framework. 

Tommaso Pecorella

unread,
Mar 11, 2014, 6:06:13 PM3/11/14
to ns-3-...@googlegroups.com
Hi Miguel,

I know you'll face this issue, so I'm going to tell you beforehand. Eclipse debugging is going to give you headaches.

Fact: Apple is not anymore installing gdb as part of Xcode, since Xcode is using lldb (great debugger, but still).
Problem: lldb is used by Xcode, but all the other IDEs (Eclipse, NetBeans, etc) are using gdb.
Sub-problem: using Xcode to develop ns-3 stuff is... meh.

Solution: install gdb manually.
1) go to the apple's developer website (https://developer.apple.com). The registration is free.
2) download xcode462_cltools_10_86938259a.dmg
3) download Pacifist (http://www.charlessoft.com)
4) open the .mpkg found inside xcode462_cltools_10_86938259a.dmg with Pacifist
5) search for "gdb"
6) install all the files you found in the default locations (simply command-S in Pacifist)
7) enjoy gdb and Eclipse/NetBeans debugging

By the way: yes, it's gdb for mountain lion. And yes, it's working like a charm, even with the executables built by llvm (i.e., the Xcode-installed compiler).

Cheers,

T.

Miguel Oliveira

unread,
Mar 11, 2014, 9:08:33 PM3/11/14
to ns-3-...@googlegroups.com
Now I am getting a strange error.
And I think it is because I just updated Xcode and Command Line Tools from 5.0 to  5.1.

When I run ./waf to build I get this error:


../src/mpi/model/null-message-mpi-interface.cc:52:16: error: unused variable 'NULL_MESSAGE_MAX_MPI_MSG_SIZE' [-Werror,-Wunused-const-variable]

const uint32_t NULL_MESSAGE_MAX_MPI_MSG_SIZE = 2000;

               ^

1 error generated.

Waf: Leaving directory `/Users/jcmpoliveira/Desktop/ns-allinone-3.19/ns-3.19/build'

Build failed

 -> task in 'ns3-mpi' failed (exit status 1): 

{task 4540605008: cxx null-message-mpi-interface.cc -> null-message-mpi-interface.cc.1.o}

['/usr/bin/g++', '-O0', '-ggdb', '-g3', '-Wall', '-Werror', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-fPIC', '-I.', '-I..', '-I/usr/local/include', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_NET_ETHERNET_H=1', '-DHAVE_GSL=1', '../src/mpi/model/null-message-mpi-interface.cc', '-c', '-o', 'src/mpi/model/null-message-mpi-interface.cc.1.o']

Tommaso Pecorella

unread,
Mar 12, 2014, 2:51:34 AM3/12/14
to ns-3-...@googlegroups.com
H,

this has been fixed in ns-3-dev.

Change the file according to this:

Cheers,

T.

José Oliveira

unread,
Mar 12, 2014, 6:01:55 AM3/12/14
to ns-3-...@googlegroups.com
Thanks!!


--
You received this message because you are subscribed to a topic in the Google Groups "ns-3-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ns-3-users/81qvw9CM4bo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ns-3-users+...@googlegroups.com.
To post to this group, send email to ns-3-...@googlegroups.com.
Visit this group at http://groups.google.com/group/ns-3-users.
For more options, visit https://groups.google.com/d/optout.

Junaid Ahmed Khan

unread,
May 13, 2014, 2:06:40 PM5/13/14
to ns-3-...@googlegroups.com
Hello All,

I tried to install ns-3.19 with Mac OS X 10.9.2.  I am unable to embed python 2.7 packages (even tried brew). I am getting the same output as Miguel. 

Miguel How did you managed to install it ? 

Any help would be appreciated.

Thanks

Junaid  

Tommaso Pecorella

unread,
May 13, 2014, 2:41:09 PM5/13/14
to ns-3-...@googlegroups.com
Hi,

the best advice I can give you is to use 3.20 as soon as it comes out (it should be a matter of days).
In the meantime you can try using ns-3-dev.

Feel free to poke me if you have issues in installing / using ns-3 on MacOS.

Cheers,

T.

Junaid Ahmed Khan

unread,
May 22, 2014, 7:52:55 AM5/22/14
to ns-3-...@googlegroups.com
Hello, 

I managed to install few packages but i need PyViz and NetAnim.. which i am still unable to install them. My ./waf configure output is shown below. Please guide me for them and any other important missing packages.

Any response will be appreciated.

Thanks

marnelaval02:ns-3.19 junaidahmedkhan$ ./waf configure

Setting top to                           : /Users/junaidahmedkhan/Documents/PhD/NS/ns-allinone-3.19/ns-3.19 

Setting out to                           : /Users/junaidahmedkhan/Documents/PhD/NS/ns-allinone-3.19/ns-3.19/build 

Checking for 'gcc' (c compiler)          : /usr/bin/gcc 

Checking for cc version                  : 4.2.1 

Checking for 'g++' (c++ compiler)        : /usr/bin/g++ 

Checking for program python              : /opt/local/bin/python 

python executable '/opt/local/bin/python' differs from system '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python'

Checking for python version              : (2, 7, 6, 'final', 0) 

Checking for library python2.7 in LIBPATH_PYEMBED : yes 

Checking for program /opt/local/bin/python-config,python2.7-config,python-config-2.7,python2.7m-config : /opt/local/bin/python-config 

Checking for header Python.h                                                                           : yes 

Checking for compilation flag -fvisibility=hidden... support                                           : ok 

Checking for compilation flag -Wno-array-bounds... support                                             : not found 

Checking for pybindgen location                                                                        : ../pybindgen-0.16.0.834 (guessed) 

Python module pybindgen                                                                                : ok 

Checking for pybindgen version                                                                         : 0.16.0.834 

Checking for types uint64_t and unsigned long equivalence                                              : no 

Checking for types uint64_t and unsigned long long equivalence                                         : yes 

Checking for the apidefs that can be used for Python bindings                                          : gcc-ILP32 

Checking for internal GCC cxxabi                                                                       : incomplete 

Python module pygccxml                                                                                 : 1.0.0 

Checking for pygccxml version                                                                          : 1.0.0 

Checking for program gccxml                                                                            : /usr/local/bin/gccxml 

Checking for gccxml version                                                                            : 0.9.0 

Checking boost includes                                                                                : 1_55 

Checking boost libs                                                                                    : ok 

Checking for boost linkage                                                                             : ok 

Checking for click location                                                                            : not found 

Checking for program pkg-config                                                                        : /opt/local/bin/pkg-config 

Checking for 'gtk+-2.0' >= 2.12                                                                        : not found 

Checking for 'libxml-2.0' >= 2.7                                                                       : yes 

Checking for type uint128_t                                                                            : not found 

Checking for type __uint128_t                                                                          : yes 

Checking high precision time implementation                                                            : 128-bit integer 

Checking for header stdint.h                                                                           : yes 

Checking for header inttypes.h                                                                         : yes 

Checking for header sys/inttypes.h                                                                     : not found 

Checking for header sys/types.h                                                                        : yes 

Checking for header sys/stat.h                                                                         : yes 

Checking for header dirent.h                                                                           : yes 

Checking for header stdlib.h                                                                           : yes 

Checking for header signal.h                                                                           : yes 

Checking for header pthread.h                                                                          : yes 

Checking for header stdint.h                                                                           : yes 

Checking for header inttypes.h                                                                         : yes 

Checking for header sys/inttypes.h                                                                     : not found 

Checking for library rt                                                                                : not found 

Checking for header netpacket/packet.h                                                                 : not found 

Checking for header sys/ioctl.h                                                                        : yes 

Checking for header net/if.h                                                                           : not found 

Checking for header net/ethernet.h                                                                     : yes 

Checking for header linux/if_tun.h                                                                     : not found 

Checking for header netpacket/packet.h                                                                 : not found 

Checking for NSC location                                                                              : not found 

Checking for OpenFlow location                                                                         : not found 

Checking for 'sqlite3'                                                                                 : yes 

Checking for header linux/if_tun.h                                                                     : not found 

Python module gtk                                                                                      : ok 

Python module goocanvas                                                                                : not found 

Python module pygraphviz                                                                               : 1.2 

Checking for program sudo                                                                              : /usr/bin/sudo 

Checking for program valgrind                                                                          : not found 

Checking for 'gsl'                                                                                     : not found 

Checking for compilation flag -Wno-error=deprecated-d... support                                       : ok 

Checking for compilation flag -Wno-error=deprecated-d... support                                       : ok 

Checking for compilation flag -fstrict-aliasing... support                                             : ok 

Checking for compilation flag -fstrict-aliasing... support                                             : ok 

Checking for compilation flag -Wstrict-aliasing... support                                             : ok 

Checking for compilation flag -Wstrict-aliasing... support                                             : ok 

Checking for program doxygen                                                                           : not found 

---- Summary of optional NS-3 features:

Python Bindings               : enabled

Python API Scanning Support   : enabled

BRITE Integration             : not enabled (BRITE not enabled (see option --with-brite))

NS-3 Click Integration        : not enabled (nsclick not enabled (see option --with-nsclick))

GtkConfigStore                : not enabled (library 'gtk+-2.0 >= 2.12' not found)

XmlIo                         : enabled

Threading Primitives          : enabled

Real Time Simulator           : not enabled (librt is not available)

Emulated Net Device           : not enabled (<netpacket/packet.h> include not detected)

File descriptor NetDevice     : enabled

Tap FdNetDevice               : not enabled (needs linux/if_tun.h)

Emulation FdNetDevice         : not enabled (needs netpacket/packet.h)

PlanetLab FdNetDevice         : not enabled (PlanetLab operating system not detected (see option --force-planetlab))

Network Simulation Cradle     : not enabled (NSC not found (see option --with-nsc))

MPI Support                   : not enabled (option --enable-mpi not selected)

NS-3 OpenFlow Integration     : not enabled (OpenFlow not enabled (see option --with-openflow))

SQlite stats data output      : enabled

Tap Bridge                    : not enabled (<linux/if_tun.h> include not detected)

PyViz visualizer              : not enabled (Missing python modules: goocanvas)

Use sudo to set suid bit      : not enabled (option --enable-sudo not selected)

Build tests                   : not enabled (defaults to disabled)

Build examples                : not enabled (defaults to disabled)

GNU Scientific Library (GSL)  : not enabled (GSL not found)

'configure' finished successfully (2.909s)



Regards,

Junaid

Konstantinos

unread,
May 22, 2014, 8:43:02 AM5/22/14
to ns-3-...@googlegroups.com
Hi,

I do not know about PyViz (I do not use it), but for NetAnim I did not find any trouble installing it.
Please follow the requirements on the wiki page 
Junaid  
Thanks!!


<div
...

JM Koo

unread,
May 23, 2014, 6:49:20 PM5/23/14
to ns-3-...@googlegroups.com
Hi there Tommaso,

can you please guide me through a full ns3 installation on osx 10.9?? http://www.nsnam.org/wiki/Installation#Mac_OS_X  doesn`t say much about it, and I can`t seem to work out my way on using mercurial or bake here.

actually I use ns3 on a virtualized ubuntu in my windows pc but I would like to use it on my mac for "on-the-go" work and stuffs.

thanks in advance,

J

Tommaso Pecorella

unread,
May 23, 2014, 7:16:41 PM5/23/14
to ns-3-...@googlegroups.com
Hi,

what part is obscure exactly ?
The installation and use is very similar to the Ubuntu one btw.

T

JM Koo

unread,
May 23, 2014, 7:31:15 PM5/23/14
to ns-3-...@googlegroups.com
thanks for the fast reply Tommaso,

well if it was ubuntu, first I would download all the prerequisites and then follow ns-3 tutorial which would be to dowload ns-3 (in this case ver. 3.19) via either tarball or bake.  I used bake in ubuntu.  Followed all the instructions (creating a dir and then cloning bake, then puting bake in path as instructed and then downloading ns3 via ./bake.py configure -e ns-3.17, please correct me if am wrong)

so then I go to mac os x section and it says download xcode which I already have and then it says download ns-allinone-3.18.1, and well thats where am lost.

thanks

JK

Tommaso Pecorella

unread,
May 24, 2014, 4:01:02 AM5/24/14
to ns-3-...@googlegroups.com
Hi,

bake is not fully tested on MacOS X, but it should work. You can try using it as in Ubuntu.
The problem may be on the required packages, as MacOS is missing yum / apt-get, so bake could have some troubles. You'll have to fix them manually, using your preferred system (e.g., MacPorts).

However, since right now bake is used "only" to fix the external dependencies (this will change in the future), you can simply download your preferred ns-3 using mercurial. E.g.:

or "ns-3-allinone-3.19" and so on, depending on the particular version you want. See http://www.nsnam.org/docs/tutorial/html/getting-started.html#downloading-ns3

Hope this helps,

T.

JM Koo

unread,
May 24, 2014, 3:46:45 PM5/24/14
to ns-3-...@googlegroups.com
thanks Tommaso... so the missing thing was MacPorts which enabled me to install mercurial via "sudo port install mercurial", which I used to download ns-3.19. 

after that I used "./waf configure"









Js-MacBook-Pro:ns-3.19 JK$ ./waf configure


Setting top to                           : /Users/JK/Documents/ns3/ns-3.19


Setting out to                           : /Users/JK/Documents/ns3/ns-3.19/build


Checking for 'gcc' (c compiler)          : /usr/bin/gcc


Checking for cc version                  : 5.1.0


Checking for 'g++' (c++ compiler)        : /usr/bin/g++


Checking for program python              : /usr/bin/python


Checking for python version              : (2, 7, 5, 'final', 0)


Checking for library python2.7 in LIBDIR : yes


Checking for program /usr/bin/python-config,python2.7-config,python-config-2.7,python2.7m-config : /usr/bin/python-config


Checking for header Python.h                                                                     : yes


Checking for compilation flag -fvisibility=hidden... support                                     : ok


Checking for compilation flag -Wno-array-bounds... support                                       : ok


Checking for pybindgen location                                                                  : not found


Python module pybindgen                                                                          : not found


pybindgen missing => no python bindings

Python Bindings               : not enabled (PyBindGen missing)


BRITE Integration             : not enabled (BRITE not enabled (see option --with-brite))


NS-3 Click Integration        : not enabled (nsclick not enabled (see option --with-nsclick))


GtkConfigStore                : not enabled (library 'gtk+-2.0 >= 2.12' not found)


XmlIo                         : not enabled (library 'libxml-2.0 >= 2.7' not found)


Threading Primitives          : enabled


Real Time Simulator           : not enabled (librt is not available)


Emulated Net Device           : not enabled (<netpacket/packet.h> include not detected)


File descriptor NetDevice     : enabled


Tap FdNetDevice               : not enabled (needs linux/if_tun.h)


Emulation FdNetDevice         : not enabled (needs netpacket/packet.h)


PlanetLab FdNetDevice         : not enabled (PlanetLab operating system not detected (see option --force-planetlab))


Network Simulation Cradle     : not enabled (NSC not found (see option --with-nsc))


MPI Support                   : not enabled (option --enable-mpi not selected)


NS-3 OpenFlow Integration     : not enabled (Required boost libraries not found)


SQlite stats data output      : not enabled (library 'sqlite3' not found)


Tap Bridge                    : not enabled (<linux/if_tun.h> include not detected)


PyViz visualizer              : not enabled (Python Bindings are needed but not enabled)


Use sudo to set suid bit      : not enabled (option --enable-sudo not selected)


Build tests                   : not enabled (defaults to disabled)


Build examples                : not enabled (defaults to disabled)


GNU Scientific Library (GSL)  : not enabled (GSL not found)


'configure' finished successfully (3.219s)



so that given, I'll be able to work fine with LTE modules right?

thanks for your help,

JK

I'mtheP Nwiko

unread,
Aug 16, 2014, 6:41:17 AM8/16/14
to ns-3-...@googlegroups.com
HI,
I have just downloaded ns3 for Mac with Mavericks and am hoping to find a step by step procedure for installation

Tommaso Pecorella

unread,
Aug 16, 2014, 7:37:18 AM8/16/14
to ns-3-...@googlegroups.com
LMGIFY...

ns-3, MacOS... there. And there's also a link to the ns-3 how-to in the nsnam wiki. Sounds like something worth a try.

It's for 10.6, crap... but it *could* work. 

Ok. let's be serious. Google helps. There are some (outdated) guides that mostly work. You can safely skip Fink/MacPorts/Homebrew for now, just install Xcode, an IDE (Eclipse, NetBeans, whatever), Mercurial and you're ready to start the serious business.
However, the most important part is... you should NOT need step by step guide, or you'll get stuck at the very first problem.

Have fun, and remember to google it.

Cheers,

T.

Tom Henderson

unread,
Aug 16, 2014, 10:50:55 AM8/16/14
to ns-3-...@googlegroups.com
On 08/16/2014 04:37 AM, Tommaso Pecorella wrote:
> LMGIFY...
>
> ns-3, MacOS... there. And there's also a link to the ns-3 how-to in the
> nsnam wiki. Sounds like something worth a try.
> http://www.nsnam.org/wiki/HOWTOs
> http://www.nsnam.org/wiki/HOWTO_get_ns-3_running_on_Mac_OS_X_(10.6.2_Intel)
>
> It's for 10.6, crap... but it *could* work.

Please try this first:
http://www.nsnam.org/wiki/Installation#Mac_OS_X

if it does not work, please let us know more specifically about the
problem you find.

OS X Mavericks with the latest Xcode is one of our buildslave machines,
so most of ns-3 is known to work on that system.

- Tom

Tommaso Pecorella

unread,
Aug 16, 2014, 1:32:56 PM8/16/14
to ns-3-...@googlegroups.com
Ok, first and foremost... sorry. I re-read my reply and I was kinda mean.

We should place an "Outdated" stamp on a couple of HowTos, as they are... outdated, and they could be confusing.

The path for a successful installation and use of ns-3 on a Mac is to get acquainted with the idea of... there's no UI. Get used to the terminal, it will not eat your soul (unless you use THE command, then you can easily delete the whole hard disk).
Anyway, get used to the Terminal app, it's in /Applications/Utilities/Terminal.app
Now, get used to the command line. It may seems ugly, but it's damn powerful. The commands are (almost) the same as the Linux ones. By when you'll start to notice the differences, you'll be a power user.

About installing ns-3. Follow the guide Tom pointed to. It's the latest one (and I forgot about it).
About the IDE for the source files, I would not recommend Xcode. Xcode is beautiful, fantastic and... too hard to setup for ns-3. I use Eclipse, some people use NetBeans, some Emacs, some vim. Choose your editor, you have plenty of choices.
After you have chosen the editor, find a suitable guide to set it up. I'd strongly suggest to FIRST setup the editor, THEN install ns-3. Most editors require a setup for a "project" and it's best to download ns-3 from within the editor.

For sure you'll need to have Xcode installed. Probably also Java (download the Oracle one, not the Apple's one, it's more updated). You'll need also mercurial, the link is in the webpage Tom pointed to.
You *may* need to install Homebrew, MacPorts or Fink. They are more or less equivalent, just stick to one of them, otherwise they'll do a mess. I use MacPorts, but I heard very good things of Homebrew. All of them are to ease the setup and install of stuff like graphviz, boost, gsl, gnuplot, etc. These are not necessary to use ns-3, but they may be useful. They can be added afterwards.

One thing that you will need for sure is a debugger. In one of my previous posts (in this very same thread) I gave the instructions to install "manually" gdb. You *will* need it, unless you want to use lldb (the command-line debugger, ouch).

Anyway, it may seems difficult, but I can tell you that the hardest part is to get acquainted with the terminal. Once you do that, it's all easy.

Feel free to ask if you get stuck somewhere. I use a Mac for ns-3 and I'll promise to not be mean. Well, unless if you ask where is the ns-3 GUI. In that case I *may* be rough.

Cheers,

T.

I'mtheP Nwiko

unread,
Aug 21, 2014, 7:22:58 PM8/21/14
to ns-3-...@googlegroups.com
Thanks a lot guys, this had been very helpful.
I have been able to install and had also ran some tutorials..

Unfortunately, after going through all the available tutorials, i am still unable to simulate my require task that led me to the tool in the first place.
I am looking to simulate an IBSS wireless network with about 50 node for the comparison of 802.11 and 802.11e QoS
some animation will be helpful and how to generate graphs for outputs like throughput/node, dataloss, delay (basically as many QoS metric as possible to intensively compare both MAC layer protocols for the standards.

Thanks
Reply all
Reply to author
Forward
0 new messages