[Coin-ipopt] make error in 'initparams.F'

Andreas Waechter andreasw at watson.ibm.com
Tue Feb 22 10:15:38 EST 2005


Hi Hans

Thanks for sending your message about your compilation problem.

Your compiler is right - according to the Fortran 77 standard, the DATA
statements have to come after all declarations (so far, no compiler I had
used has complained about it).  I just committed the corresponding changes
(in find_param.f and initparams.F).  In order to get the new source, you
could wait for tomorrow's Ipopt tarball (they are created only once a day
around midnight), or if you don't want to wait you can get them via CVS,
e.g. from the CVS web interface at

http://www.coin-or.org/cgi-bin/cvsweb.cgi/~checkout~/COIN/Ipopt/IPOPT/ipopt/find_param.f?rev=1.3;content-type=text%2Fplain

and

http://www.coin-or.org/cgi-bin/cvsweb.cgi/~checkout~/COIN/Ipopt/IPOPT/ipopt/initparams.F?rev=1.8;content-type=text%2Fplain

It seems that you are using a compiler different from the GNU compiler
(which would not have complained about the order of DATA statements), your
compiler executable is /usr/bin/fort77 on your machine.  The Ipopt code is
written in Fortran 77, but there are a few non-standard things that I used
- I hope your compiler will not choke on them.  If it does, you could tell
your configuration script explicitly to use the GNU compiler, e.g. by

./configure F77=g77 [and the rest of your options here)

after a `make clean'

Anyway, I hope you are now able to compile the code.

Andreas


On Sun, 20 Feb 2005, hong weirong wrote:

> Hello,
>
> after 'configure: Configuration successful', type make, the following messages are displayed:
>
>
> fort77 -DHAVE_CONFIG_H -I. -I. -I../../IPOPT/include -I../../IPOPT/include -I../../IPOPT/include     -O  -c -o initparams.o initparams.F
>    initparams:
> Error on line 222 of <stdin>: Statement order error: declaration after DATA
> /usr/bin/fort77: aborting compilation
> make[2]: *** [initparams.o] Error 255
> make[2]: Leaving directory `/home/hong/ipopt-1/COIN/Ipopt/IPOPT/ipopt'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/hong/ipopt-1/COIN/Ipopt/IPOPT'
> make: *** [all-recursive] Error 1
>
> the preceding sentence in file 'initparams.F'  line 222 is :
>
> data CPARAMS /
>         ...
>         ...
>         ...
> #ifndef INCLUDE_CC
>      1     'DCMAXTOL'/                ! maximal allowed (unscaled) constraint
>                                                ! violation for successful termination
> #else
>      1     'DCMAXTOL',                !
>      1     'IMPEC_TRIGGER',       ! option of triggering step modification for
>                                                ! MPECs
>      1     'DMPEC_ETAFACT',     ! factor multiplying the modification
>      1     'DMPEC_THRESH'/       ! threshold mu below which modification is
>                                                ! triggered
> #endif
>
>
> Ipopt_2005Jan28.tar was downloaded, operation system is i686 GNU/Linux, How to solve it?
>
> in addtion, PARAMS.DAT file need not prepare in version2.2 ?
>
>
> regards,
> Hans
>
>
>
> ---------------------------------
> Do you Yahoo!?
>  Yahoo! Search presents - Jib Jab's 'Second Term'




More information about the Coin-ipopt mailing list