NED files of INET are not loading

215 views
Skip to first unread message

Samvel Siradeghyan

unread,
Nov 4, 2014, 4:37:11 AM11/4/14
to omn...@googlegroups.com
Hi all
I am trying to run simulation created from command line.
I am using INET.
Here is what commands I am giving:

opp_makemake -f --deep -O out -L../inet/out/gcc-debug/src -linet -DINET_IMPORT -KINET_PROJ=../inet
make MODE=debug CONFIGNAME=gcc-debug all

It is generating make file and executable (TestProj1.exe in my case). Then I am trying to run simulation with this command:

TestProj1.exe -r 0 -n .;../inet/examples;../inet/src -l ../inet/src/inet omnetpp.ini

Output is:
Loading NED files from .:1

....

sh.exe": ../inet/examples: is a directory
sh.exe": ../inet/src: is a directory

because of it I am getting errors (like cannot resolve module type 'WirelessHost').

Am i do something wrong?
How to load NED files on IENT?

Thanks

Rudolf Hornig

unread,
Nov 4, 2014, 5:21:56 AM11/4/14
to omn...@googlegroups.com
Yes. Use colon as the (ned) path separator (:) instead of semicolon (;). 

Samvel Siradeghyan

unread,
Nov 4, 2014, 5:29:02 AM11/4/14
to omn...@googlegroups.com
Thanks for help.
I was using 4.3.1 Manual.pdf, and there was written "Directories are separated with a semicolon (;).", page 238. May be it is fixed for newer versions.

Rudolf Hornig

unread,
Nov 5, 2014, 5:08:56 AM11/5/14
to omn...@googlegroups.com
Hmm, you are right. That is what's written in the manual. The main reason for recommending ; is that you can specify the ned path in a platform neutral way. The problem is that if you use ; in a bash script (and the mingwenv prompt is actually a bash shell on Windows) then the ; is treated by the shell itself as a command separator, so ; means 'end of command'. To avoid this you must quote the given argument. So in strict sense you should write:

TestProj1.exe -r 0 -n ".;../inet/examples;../inet/src" -l ../inet/src/inet omnetpp.ini

note the quotes around the ned path.  Without the quotes it is actually thre commands that should eb executed sequencially:
TestProj1.exe -r 0 -n .
../inet/examples
../inet/src" -l ../inet/src/inet omnetpp.ini

that's why you got the error message for the last two command:
sh.exe": ../inet/examples: is a directory
sh.exe": ../inet/src: is a directory

But usually I'm lazy and just use the : for separator as it is working, too.
Reply all
Reply to author
Forward
0 new messages