Skip to main content

Installation of Network Simulator (NS2.35) in Mac OS

Installing NS2 in Mac OS is always a tougher task. Setting and configuring so many config files, etc.
But the latest version of NS2 (ns-2.35) is easily installing under Mac OS

OS Taken here is Mac OS 10.6 (Snow Leopard)
NS Version is ns-2.35 RC8

Prerequisites: Mac OS should be installed with the developer pacakge called xcode
with the help of Xcode only, all development modules can be handled.

So, the first step is to install the xcode, Download Xcode from this link http://developer.apple.com/xcode/

Download the ns-allinone-2.35 rc8 for installation, Download from http://www.isi.edu/nsnam/dist/release/RC8/

1. Install Xcode
2. Unzip or untar ns-2.35 using the command "tar zxvf ns-allinone-2.35-xxx.tar.gz" (without quotes)
3. The ns-2.35 configuration files contains  the path to xlibdir and xincdir, so you need not include the path for those directories.
4. kindly ensure that the path to xlibdir and xincdir are installed on your Mac OS(Xcode)
5. execute the command ./install inside the directory (~ns-allinone-2.35-xxx/) (use terminal to install) .
6. Once installed successfully, the path setting information will be provided to you. copy those informations and put it in a file called .profile or .bash_profile (please note that there is a dot in these files)

in my case, this is the path information (include the following line in the .profile file)

export PATH=$PATH:/Users/VIT/Downloads/ns-allinone-2.35-RC8/bin:/Users/VIT/Downloads/ns-allinone-2.35-RC8/tcl8.5.8/unix:/Users/VIT/Downloads/ns-allinone-2.35-RC8/tk8.5.8/unix

and also one more path called LD_LIBRARY_PATH
export LD_LIBRARY_PATH= <paths>

7. finally execute the command "source .profile" (wihtout quotes) and logout and login back.

open the terminal and type ns (you will get a % symbol indicates that the ns2 is installed successfully)
type nam and you can see a animation window is popping out.
(thats it)

if you want to install ns2.34 and earlier versions in Mac OS, then the above method will not be suitable for you. you need to include the
xlibdir and xincdir path in all the config files of ns2
xlibdir=/Developer/SDKs/MacOSX10.4u.sdk/usr/lib
xincdir=/Developer/SDKs/MacOSX10.4u.sdk//usr/include
and then proceed with the above steps..







Comments

  1. Hi,
    I am trying to install ns2-allinone-2.35-rc8 on a mac 10.6 but i get hte following error any helpwould be really appreciated. Thanks in advance

    * Build OTcl-1.14
    ~~~~~~~some more lines here ~~~~~~~~~
    gcc -o otclsh -g -O2 -I. -I/theDev/ns-allinone-2.35/include -I/theDev/ns-allinone-2.35/include -I/theDev/ns-allinone-2.35/include -I/include otclAppInit.c \
    -L. -lotcl -L/theDev/ns-allinone-2.35/lib -ltk8.5 -L/theDev/ns-allinone-2.35/lib -ltcl8.5 -L/usr/X11R6/lib -lXext -lX11 -lm
    Undefined symbols for architecture x86_64:

    ~~~~~~~some more lines here ~~~~~~~~~
    ld: symbol(s) not found for architecture x86_64
    collect2: ld returned 1 exit status
    make: *** [otclsh] Error 1
    otcl-1.14 make failed! Exiting .

    ReplyDelete
  2. I was not worked on Mac OS before, but i tried the first time and i succeeded in installing ns2.35. anyway i look into it.

    ReplyDelete
  3. I have the same problem with UpStreamSwimmer,and I can not find the solution...

    ReplyDelete
  4. i Tried again in Mac OS Lion, it was installed successfully....

    ReplyDelete
    Replies
    1. Hello,

      I try to install "ns-allinone-2.35" on MacOS lion but when I run ./install and it fails to build OTcl-1.14, as you can see below:

      ============================================================
      * Build OTcl-1.14
      ============================================================
      No .configure file found in current directory
      Continuing with default options...
      checking build system type... i386-apple-darwin11.3.0
      ........
      ........
      ........
      "___CFConstantStringClassReference", referenced from:
      CFString in libtcl8.5.a(tclMacOSXNotify.o)
      CFString in libtcl8.5.a(tclMacOSXBundle.o)
      CFString in libtcl8.5.a(tclMacOSXBundle.o)
      ld: symbol(s) not found for architecture x86_64
      collect2: ld returned 1 exit status
      make: *** [otclsh] Error 1
      otcl-1.14 make failed! Exiting ...
      See http://www.isi.edu/nsnam/ns/ns-problems.html for problems


      Do you know how can I solve this problem, please?
      Best Regards,

      Delete
    2. hi friends,

      you have to make changes in the .install file, until unless we will get the error like this...

      totally four changes we have to do in the ./install file.

      thanks

      Delete
  5. I as well have the same problem and UpStreamSwimmer and Bency Lin... any update? using Os X 10.7

    ReplyDelete
  6. me to have the same problem
    ld: symbol(s) not found for architecture x86_64
    any help i use mac os 10.7

    ReplyDelete
    Replies
    1. Hello Ahmed,

      I have exactly the same problem as you. Would you please let me know how you solved this problem?

      Delete
    2. You just need to download the patch from here
      http://old.nabble.com/file/p34431582/install.osx.patch
      Then
      cd ns-allinone-2.35
      patch -p1 -i install.osx.patch
      ./install
      And continue with the guide.

      Delete

Post a Comment

Popular posts from this blog

Installing ns-3.34 in Ubuntu 20.04

This post shows how to install ns 3.34 in Ubuntu 20.04 LTS Prerequisites: Fresh installation of Ubuntu Version 20.04 LTS  ns3.34 can be downloaded from here Follow the video link for complete step by step instructions on the installation.  This version fixes the compilation issues of vanet-routing-compare.cc (bug in ns3.33)  Issue the following commands after opening a terminal  $ sudo apt update $ sudo apt install g++ python3 python3-dev python-dev pkg-config sqlite3 python3-setuptools git qt5-default gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython3 openmpi-bin openmpi-common openmpi-doc libopenmpi-dev autoconf cvs bzr unrar openmpi-bin openmpi-common openmpi-doc libopenmpi-dev tcpdump wireshark libxml2 libxml2-dev Unzip or untar the ns-allinone-3.34.tar.bz2 in the home folder (in my case its /home/pradeepkumar) $ cd ns-allinone-3.34/ $ ./build.py --enable-examples --enable-tests  Once the installation is completed, you may get an output show

Installation of ns3 in Windows 10 and Windows 11 OS using WSL (Windows Subsystem for Linux)

This post shows how to install ns-3.33 in Windows 10 through WSL (Windows Subsystem for Linux) This posts works for Windows 11 also (I have tested it on a Windows 11 ISO and it works the Same way as mentioned in the following post.) This post will work for ns-3.3x version. Prerequisites : Install Windows Subsystem for Linux with GUI: Please refer the following video  System Information: OS used: Windows 10 and WSL (Ubuntu 20.04) GUI: XServer for Windows NS3 Version: ns-3.33 See the following complete video on how to install ns3 in Windows 10 Step 0 : Open XLaunch Step 1 :  Open WSL using PowerShell and open it as Administrator Command:/  wsl $ xfce4-session The GUI of Ubuntu Opens within Windows 10 OS. Step 2 : Download ns3 from nsnam.org website through Mozilla Firefox browser Step 3: Open a Terminal  $ sudo apt update $ sudo apt install build-essential autoconf automake libxmu-dev python3-pygraphviz cvs mercurial bzr git cmake p7zip-full python3-matplotlib python-tk python3-dev qt5-q

Installing NS-3.32 in Ubuntu 20.04

This is about installing ns version 3.32 in Ubuntu 20.04 LTS. #ns3 #ns3 .32 #networksimulation The commands used in the video are given here. $] sudo apt update $] sudo apt install build-essential autoconf automake libxmu-dev python3-pygraphviz cvs mercurial bzr git cmake p7zip-full python3-matplotlib python-tk python3-dev qt5-qmake qt5-default gnuplot-x11 wireshark Download the ns-allinone-3.32.tar.bz2 package from nsnam.org and copy it to /home/ folder See the full video for detailed instructions Extract it either in GUI or using command $] tar jxvf ns-allinone-3.32.tar.bz2 $] cd ns-allinone-3.32/ $] ./build.py --enable-examples --enable-tests The above command will take some time to install all the packages  You can see the output as shown below ns3 To check whether ns3 installed successfully, use the following commands. $] cd ns-3.32/ $] ./waf --run hello-simulator You should get the output as Hello Simulator $] ./waf --run first This is the example from the ns-3.32/exa