[Coin-ipopt] Re: IPOPT for win32

Andreas Waechter andreasw at watson.ibm.com
Tue Sep 16 12:23:09 EDT 2003

Hello Petros,

Many thanks for your message.  I'm sending my reply also to the IPOPT
mailing list, which is the preferred communication channel for those kinds
of questions.  Also, since I usually don't work under Windows, it is quite
possible that someone else who has compiled Ipopt under Windows can add
value tipps.

> 	I am trying to build the IPOPT for win32 (win2000), using a compaq
> fortran compiler, in a very naive,
> simple-minded fashion (just by including the src files and trying to add
> whatever else is needed. I only use MA27).

This will not work, since you need to run the source code (essentially all
*.F files) through a preprocessor with the correct '-D' flags.  The Ipopt
distribution includes the makefiles for compiling Ipopt under Windows in
CygWin (please refer to the COIN/Ipopt/doc/README.Windows file).  In that
case you could find out what source code files are included for the
compilation of the individual packages by looking at the output when you
type 'make', and you could also see what '-D...' flags are added for the
preprocessor for your specific selection of third party code and
operating system.  Also note that TRON, if you select to use it, needs to
have patches applied to before it can work within IPOPT!

> I do not have CUTEr.  Is it a prerequisite?

If you don't want to run the CUTEr test problems, you don't need it.

> It seems that whenever I try to include files from the auxil directory (for
> the routines eval_c, eval_a etc) CUTEr is somehow
> pulled in. I did go through the makefiles and instalation instructions but I
> could not see if some flag would prevent this from happening.

Hmm... there are no eval_a or eval_c routines in the auxil directory, so
you might have gotten some files from the CUTEr_interface directory into
your source file selection.

The nonlinear optimization problem is communicated to Ipopt through those
routines eval_f, eval_c etc (see Section 5.3 in the README.Ipopt file).
If you want to just build an AMPL-IPOPT executable, those routines are
procided in the AMPL interface code in SOURCES/IPOPT/AMPL_interface.  If
you want to pose the problem to IPOPT by writing a Fortran program, you
will need to write those routines yourself; in that case you might want to
have a look at SOURCES/IPOPT/Fortran_example for sample files (and read
Section  5.3 in the README.Ipopt file).

In general, it would be great to be able to provide an easy way to compile
Ipopt under Windows.  So far, we have Makefiles for compiling it under
CygWin - and suggestions or contributions (in form of makefiles or
developer studio project files etc) in order to allow it to be build with
different compilers are very welcome.

I hope this helps,


PS: In order to reply to the mailing list, you will have to subscribe
first :)

More information about the Coin-ipopt mailing list