Go to content Go to menu

Recently, for a project, I needed to work with ns2 (1), (2). Adding own protocols to ns2 requires to compile it from the sources instead of just installing it via apt-get.

It has a lot of dependencies (e.g. tcl/tk) which where already installed on my system. According to here there is a all-in-one package of ns2 including ALL its dependencies. As my machine is always near to 100% full and I already have installed its dependencies for other projects I just downloaded ns2 source without dependencies. Downloading the sources and the well known stanza ‘configure / make / make install’ should be enough - I though.

But alas - configure didn’t find required dependencies. OK - so fix some paths to keep configure happy. But now lots of compile time errors occurred. I’m running on Ubuntu Linux 16.04 LTS 64bit and a lot of include files and libraries are not there where ns2’s configure script expects it to find. It also seems that ns2’s dependencies installed via apt-get have been compiled with different compile time options as ns2 expects. Google did not help much and so I decided to fix things so that I can successfully compile ns2 an start hacking new protocols.

This post shows the steps and also provides the patches.

Step 1: Install prerequisites (from package repository)

sudo apt-get install \
   tcl8.6 libtcl8.6 tcl8.6-dev \
   tk8.6 tk8.6-dev \
   libotcl1 libotcl1-dev \
   tclcl libtclcl1 tclcl-dev

Step 2: Get the sources (ns2 without dependencies)

wget \
    https://sourceforge.net/projects/nsnam/files/ns-2/2.35/ns-src-2.35.tar.gz/download \
    -O ./ns-2.35.tgz
tar xvf ./ns-2.35.tgz

Step 3: Apply the patches

The patches can be downloaded here ns-2.35-ubuntu-16.04-64bit.patch.

patch \
    -d ./ns-2.35 \
    -p2 \
    < ./ns-2.35-ubuntu-16.04-64bit.patch

Step 4: configure / make / make install

cd ./ns-2.35
./configure \
    --with-tcl-ver=8.6 \
    --with-tk-ver=8.6
make

Now you should have a ns binary in ns2 source folder. To ensure that ns2 compiled correctly, run validate to perform tests (warning: this takes long)

Step 5: Start hacking

For more infos about ns2 and ns2 development see the following links

This steps were tested with Ubuntu 16.04 LTS 64bit and it might be that they wont work with other versions or distributions. But they may help to fix problems there too.

Using pjsip with golang

Monday, September 24, 2018

go-pjsip.png

This article describes how to use the great, C/C++ based SIP library pjsip with Go.
 
 

[Read More…]

dec112-logo.png Today we completed the next step in advancing our efforts to make next generation 112 available for people in need in Austria.
 
We have submitted a funding application to www.netidee.at, Austrias largest internet funding initiative. One part of the application was the requirement for a short video about us, the project and the goals.

 
You can find it on youtube (in german) - be nice to us, we are not video professionals :-)



 

See also the introduction to DEC112.


 
 

ESA ESTEC Final Presentation Days 2017

Wednesday, March 15, 2017

newton.png I was very pleased to give a presentation about the AMP Testbed Project at this years ESA ARTES Final Presentation Days on March, 8th 2017 at ESAs technical center ESTEC Newton conference room.

 
[Read More…]

dec112-logo.png Today’s emergency services are almost voice-only capable and only a marginal share of data and multimedia is used by Public Safety Answering Points (PSAPs).

Improving access to emergency services for deaf and hard of hearing citizens induces enabling PSAPs and people in need to handle their modes of communications such as text.

 

[Read More…]