[Ipopt] Building ipopt win64

Anthony D. Kelman kelman at berkeley.edu
Fri Aug 26 11:59:05 EDT 2016


Should work fine without needing to build things separately or have most of
those messy configure flags if you use gcc and g++.

On Aug 26, 2016 8:55 AM, "FEDERICO PRADES ILLANES" <federico.prades at bbva.com>
wrote:

> Hello ipopt'ers,
>
> We are trying to build Ipopt 3.12.6 in windows win32 and win64, using
> MinGW(we are using tdm-gcc with gcc/gfortran 5.1).
>
> We were successful building win32 version both Debug and Release versions,
> but not so lucky with the win64 version.
>
> The versions of the additional software we use:
>
> - MUMPS 4.10.0
> - blas (coinor 20130815)
> - Lapack 3.4.2
>
> To build Ipopt, we proceed as follows:
>
> # Load cywin and VS2012
>> export CC=cl
>> export CXX=cl
>> ./configure --disable-shared --enable-static --with-pic
>> --enable-doscompile=msvc --enable-dependency-linking
>> lt_cv_deplibs_check_method=pass_all --with-blas-lib="$BLAS_HOME/blas.dll"
>> --with-lapack-lib="$LAPACK_HOME/liblapack.dll"
>> --with-mumps-lib="$MUMPS_HOME/libdmumps.lib $MUMPS_HOME/
>> libmumps_common.li
>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__libmumps-5Fcommon.li&d=CwMFaQ&c=Ngd-ta5yRYsqeUsEDgxhcqsYYY1Xs5ogLxWPA_2Wlc4&r=en0_ydai4UPM8nLin0WTg5UWlOXuXT_rDA2W227v-no&m=RUHqPu0tUOI-3mVldY6x15efzbVXhb7j8ZpOkUMvWMg&s=alTzhyoWjcrUYhDhnVEWCq48VNeUYW8OrRk4gFy1XoE&e=>b
>> $MUMPS_HOME/libpord.lib $MUMPS_HOME/libmpiseq.lib"
>> make -j12 install
>
>
> Ipopt builds fine win32/win64. And we have a example code to use Ipopt. To
> build and link the example, we use the following 32bits libraries:
>
> - $MINGW_ROOT/lib/libmingwex.a
> - $MINGW_ROOT/lib/gcc/mingw32/5.1.0/libgfortran.dll.a
> - $MINGW_ROOT/lib/gcc/mingw32/5.1.0/libgcc.a
>
> Builds, links and runs nicely on win32. However in win64 we use:
>
> - $MINGW_ROOT/x86_64-w64-mingw32/lib/libmingwex.a
> - $MINGW_ROOT/lib/gcc/x86_64-w64-mingw32/5.1.0/libgfortran.dll.a
> - $MINGW_ROOT/lib/gcc/x86_64-w64-mingw32/5.1.0/libgcc.a
>
> Here is where the fun starts. We start to get errors like:
>
> libmingwex.lib(lib64_libmingwex_a-powi.o) : error LNK2001: unresolved
>> external symbol __mingw_raise_matherr
>
>
> Looking around in mingw we managed to find the missing symbol, at:
>
> - $MINGW_ROOT\x86_64-w64-mingw32\lib\libmingw32.a
>
> The error then becomes
>
> MSVCRT.lib(gs_report.obj) : error LNK2005: *__report_gsfailure already
>> defined* in libmingw32.lib(lib64_libmingw32_a-gs_support.o)
>> libmingw32.lib(lib64_libmingw32_a-merr.o) : error LNK2005:* _matherr
>> already defined* in MSVCRT.lib(merr.obj)
>
>
> ​Does anybody know ​what are we missing? Or how to solve it?
> Does anybody know if it's possible to build ipopt with mingw using
> gfortran? Is it documented in detail?
>
> Thanks for your help, and patience to read this far.
>
> *Federico Prades Illanes* - *ext. (2)75682 - Software Evangelist*
> *Quantitative and Business Solutions (QBS) **- CIB - **BBVA*
>
>
> "Este mensaje está dirigido de manera exclusiva a su destinatario y puede
> contener información privada y confidencial. No lo reenvíe, copie o
> distribuya a terceros que no deban conocer su contenido. En caso de haberlo
> recibido por error,  rogamos lo notifique al remitente y proceda a su
> borrado, así como al de cualquier documento que pudiera adjuntarse.
>
>  Por favor tenga en cuenta que los correos enviados vía Internet no
> permiten garantizar la confidencialidad de los mensajes ni su transmisión
> de forma íntegra.
>
>  Las opiniones expresadas en el presente correo pertenecen únicamente al
> remitente y no representan necesariamente la opinión del Grupo BBVA."
>
>  "This message is intended exclusively for the adressee and may contain
> privileged and confidential information. Please, do not disseminate, copy
> or distribute it to third parties who should not receive it. In case you
> have received it by mistake, please inform the sender and delete the
> message and attachments from your system.
>
>  Please keep in mind that e-mails sent by Internet do not allow to
> guarantee neither the confidentiality or the integrity of the messages
> sent."
>
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> https://urldefense.proofpoint.com/v2/url?u=http-3A__list.
> coin-2Dor.org_mailman_listinfo_ipopt&d=CwICAg&c=Ngd-
> ta5yRYsqeUsEDgxhcqsYYY1Xs5ogLxWPA_2Wlc4&r=en0_ydai4UPM8nLin0WTg5UWlOXuXT_
> rDA2W227v-no&m=RUHqPu0tUOI-3mVldY6x15efzbVXhb7j8ZpOkUMvWMg&s=
> XsC1Hkmrqu2mqt5IJG82BosXJQdKrg2BBsQQmOnbGH0&e=
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20160826/f1fd7167/attachment-0001.html>


More information about the Ipopt mailing list