Icarus Verilog works seamlessly within the VppSim framework out of the box
EXCEPT for viewing messages sent to cerr.  For some reason, the TCL/TK gui 
does not display cerr messages, which is a problem when trying to debug
Verilog code.

To address the above issue, a very slight change was made to the main.cc 
file of Icarus Verilog.  Namely, the following line was added toward the 
begining of the main(int argc, char*argv[]) function:

      //// Redirected cerr to cout for VppSim usage ///
      cerr.rdbuf(cout.rdbuf());
      /////////////////////////////////////////////////

The above line simply redirects cerr messages to cout, which fixes the 
problem within the VppSim framework. 

The updated main.cc file is included in this directory. This change is 
obviously not useful beyond the VppSim framework, and therefore will never 
make into the general Icarus distribution.  As such, those that want to use 
future versions of Icarus Verilog within VppSim will need to add the above 
line the main.cc code and then re-compile the Icarus source.

Note that compiling the Icarus source in Windows is very easy using Msys 
(which is included in the CppSim/VppSim package).  Simply run the msys 
command shell in directory
c:/CppSim/CppSimShared/Msys
Then, within the msys shell, go to the Icarus Verilog source directory
and run:
./configure --prefix=c:/CppSim/CppSimShared/IVerilog
make all
make install

Note that the above adjustment to Icarus Verilog for operation within
the VppSim framework carries no warranty or support, and no obligation
or guarantee of proper operation of Icarus Verilog or VppSim.

Michael H. Perrott
July 14, 2011 