[ndnSIM] How to use a non-standard ndnSIM install paths

Yoshimichi Nakatsuka nakatsuka at west.sd.keio.ac.jp
Wed May 3 17:15:49 PDT 2017

Hi Chris and Philipp,

I'm also using ndnSIM from a non-standard location and I've went through 
a lot of trouble when doing so.
Here are some steps you could follow:

1. After you "exported" your custom paths, you should run "ldconfig". 
This command tells the machine to configure its run time libraries.
2. Don't forget to configure, build, and install your ndnSIM files 
*with* the "--prefix" flag.
     For example, the command will be like:
cd <ns-3-folder>
    ./waf configure --boost-includes=[boost-path]/include 
--boost-libs=[boost-path]/lib --enable-examples --prefix=[custom-path]
    ./waf --prefix=[custom-path]
    ./waf install -prefix=[custom-path]
3. You should then check whether you can run some sample simulations 
with your ndnSIM.
      e.g.) ./waf --run=ndn-simple

Running a simulation using the Scenario Template Structure is a little 
bit different from when you are running a simulation directly from the 

4. The Scenario Template has its own waf that needs configuration.
cd <scenario-template-folder>
./waf configure --prefix=[custom-path]
5. Then check whether you can run your simulation file from your 
Scenario Template folder.
     e.g.) ./waf --run=your-custom-simulation

When you get an error when configuring ndnSIM (i.e., running ./waf 
configure) and you are sure that you have installed all the 
dependencies, your LD_LIBRARY_PATH or your PKG_CONFIG_PATH (or both) 
could be wrong.
When you get an error when building ndnSIM (i.e., running ./waf), most 
of the time your simulation file has something wrong.

Hope that this helps!


On 2017/05/03 18:04, Philipp Moll wrote:
> Hi Chris,
> I am using ndnSIM from a non-standard location, because I need the 
> simulator on a server without superuser access rights. ...and it works.
> When I compiled ndnSIM i used the "--prefix" flag for choosing the 
> location. I'm not completely sure, but I think no waf-flags are 
> required for compiling the scenario. But maybe some more exports:
> export LIBRARY_PATH=/[custom-path]/bin/:$LIBRARY_PATH
> export LD_LIBRARY_PATH=/[custom-path]/bin/lib/:$LD_LIBRARY_PATH
> export C_INCLUDE_PATH=/[custom-path]/bin/include/:$C_INCLUDE_PATH
> export CPLUS_INCLUDE_PATH=/[custom-path]/bin/include/:$CPLUS_INCLUDE_PATH
> export PKG_CONFIG_PATH=/[custom-path]/bin/lib/pkgconfig
> export PATH=$PATH:/[custom-path]/bin/
> This are all exports on my machine, not all of them were needed for 
> ndnSIM. But maybe one of them is required for your installation.
> The exact flag for compiling ndnSIM was "--prefix=/[custom-path]/bin" 
> in my case.
> Regards,
> Philipp
> On 03/05/17 10:52, Chris Mantis wrote:
>> Hi Philipp, It is not helping. I think this two exports IMO would 
>> take care of loading dynamic libraries at run time. I am having 
>> issues with compiling itself. There are bundle of headers from 
>> ndnSIM, which I am trying to use/include in my 'scenario' and only 
>> way I see at the moment is to install the ndnSIM in default 
>> (/usr/local/) path. Does this make sense?
>> On Wed, May 3, 2017 at 12:39 AM, Philipp Moll 
>> <philipp.moll at itec.aau.at <mailto:philipp.moll at itec.aau.at>> wrote:
>>     Hi Chris,
>>     have you tried exporting the "LD_LIBRARY_PATH" and the
>>     "PKG_CONFIG_PATH" variables? Compiling the scenario worked for me
>>     after the following exports.
>>     export LD_LIBRARY_PATH=/[custom-path]/bin/lib/:$LD_LIBRARY_PATH
>>     export PKG_CONFIG_PATH=/[custom-path]/bin/lib/pkgconfig
>>     Regards, Philipp
>>     On 03/05/17 09:26, Chris Mantis wrote:
>>>     Hi, While using the 'scenario template structure' (as mentioned
>>>     at the bottom of this page:
>>>     http://ndnsim.net/2.3/getting-started.html
>>>     <http://ndnsim.net/2.3/getting-started.html>), I fail to
>>>     understand which (waf) configure options to use while
>>>     configuring my scenario s.t. it uses the non-standard ndnSIM
>>>     install paths to build my template base use case.
>>>     Note: I have cloned the ndnSIM code base and configured it using
>>>     --prefix option so that I install it in a non-standard location.
>>>     any help?
>>>     Chris.
>>>     _______________________________________________
>>>     ndnSIM mailing list
>>>     ndnSIM at lists.cs.ucla.edu <mailto:ndnSIM at lists.cs.ucla.edu>
>>>     http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim
>>>     <http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim>
>>     _______________________________________________ ndnSIM mailing
>>     list ndnSIM at lists.cs.ucla.edu <mailto:ndnSIM at lists.cs.ucla.edu>
>>     http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim
>>     <http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim> 
> _______________________________________________
> ndnSIM mailing list
> ndnSIM at lists.cs.ucla.edu
> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20170504/3c6bf447/attachment.html>

More information about the ndnSIM mailing list