Recent Changes - Search:

Installation of OMNeT++ 3.x on Cygwin

NOTE: These instructions were written for OMNeT++ 3.x. The 4.x series are already released with a bundled copy of MinGW and necessary libraries, so there is little motivation to use Cygwin. If you are still looking into using OMNeT++ 4.x with Cygwin, you are invited to document your experiences on this page.

Installation instructions in nutshell

You need to compile OMNeT++ from source, as the libs in the Windows binary version are for Visual C++ and they are not compatible with Cygwin. The procedure is essentially the same as on Linux, except that the compilation environment has to be set up first.

  1. install Cygwin (DOS file mode will be fine)
    1. Do not forget to choose the "perl" and "tcltk" packages. ActivePerl and ActiveTcl will not work
  2. download X11inc.zip from the omnetpp.org download area then extract it to /usr/include/X11
  3. download and install BLT for Cygwin from the omnetpp.org download area
  4. download and extract OMNeT++ (the .tgz bundle)
  5. add omnetpp/bin to the PATH
  6. do the usual GNU stuff: ./configure, make
  7. make sure nedtool, gned, opp_makemake etc and the sample simulations work

If you are unsure or have run into trouble, please read the detailed instructions.

Issues with Cygwin

Problem with gcc 2.95.x

IMPORTANT: Do not use the Cygwin gcc 2.95.x compiler, as it generates flawed exception handling code (will crash when used with coroutines/threads). Later Cygwin gcc versions (3.2 or later) should be fine.

Problem with gcc 3.4.4 (cygming special)

OMNeT++ 3.2 does not compile with this version of gcc. gcc --version displays the version number of your gcc.

As there is no problem with several other gcc versions (gcc-4.0.1 , gcc-3.4.0 , gcc-3.3.5 on Linux, gcc-3.3.3 (cygwin special), gcc-3.2.3 (mingw special), gcc-3.3.3 (linux ia64)) and with C++ compilers from other vendors (the Intel compiler, Visual C++), this can be safely considered a compiler bug. Please install another version of gcc.

The compilation problem seems to occur during the linking phase in the samples directories. Apparently, there is a cyclic dependency between the envir and tkenv libraries. A possible work-around is executing the following bash command after a successful configure:

for file in samples/*/Makefile; do sed -i 's#-lenvir -ltkenv#-lenvir -ltkenv -lenvir#g' $file; done

Cygwin: simulation programs crash on exit

We have observed this when compiling OMNeT++ with gcc 3.3.3 (cygwin special) and release CFLAGS (-O2 -DNDEBUG=1) which is the default configure.user setting. Recompiling everything with debug CFLAGS (-g -Wall) seems to make the problem go away. The crash doesn't occur on other platforms (MSVC, gcc on Linux) so it is likely caused by a bug in the Cygwin port of gcc.

Installing on omnetpp-4.1 on Cygwin

I took the chance and eventually succeeded to build on Cygwin. The IDE is still not functional - but the batch execution works great.

I posted a message on the group

Edit - History - Print - Recent Changes - Search
Page last modified on July 07, 2010, at 11:37 AM