MUMPS error
matheusdiogenesandrade opened this issue · 2 comments
Overview:
I am trying to run Ipopt compiled with Mumps + ASL + HSL + Lapack, and when running the compiled version, I obtain the following error.
** Instance Error 1 in DMUMPS_F77
The performed steps were:
./configure --with-hsl-lflags="-L$HOME/ThirdParty/HSL/build -lcoinhsl"
--with-lapack-lflags="-L$HOME/ThirdParty/Lapack/build/lib -lcoinlapack"
--with-mumps-lflags="-L$HOME/ThirdParty/Mumps/build -lcoinmumps"
--with-mumps-cflags="-I$HOME/ThirdParty/Mumps/MUMPS/include -I$HOME/ThirdParty/Mumps"
--with-asl-lflags="-L$HOME/ASL -lcoinasl"
--with-asl-cflags="-I$HOME/ASL/solvers"
make
sudo make install
make test
Tech stack:
- Ipopt 3.14.14
- CoinHSL 2023.11.17
- Mumps 5.6.2
- Linux pop-os 6.2.6
Thanks and regards.
Issue related to #739.
Solved!
I was wrongly compiling it, now follows the right flags to do so:
../configure --with-hsl-lflags="-L$HOME/ThirdParty/HSL/build -lcoinhsl"
--with-lapack-lflags="-L$HOME/ThirdParty/Lapack/build/lib -lcoinlapack"
--with-asl-lflags="-L$HOME/ASL -lcoinasl" --with-asl-cflags="-I$HOME/ASL/solvers"
--with-spral-lflags="-L$HOME/Spral/lib -lasan -latomic -lgcc_s -lgfortran -lgomp -lhwasan -lhwloc -litm -llsan -lmetis -lobjc -lopenblas -lquadmath -lspral -lssp -ltsan -lubsan"
--with-spral-cflags="-I$HOME/Spral/include"
--with-intsize=64
Just removed the Mumps, and added the Spral and --with-intsize=64
, although no idea it worked.
Thanks.
I cannot say why MUMPS reported an Instance Error 1
. Haven't seen this before.
Building Ipopt for 64bit integer size requires that also dependencies support this. See https://coin-or.github.io/Ipopt/INSTALL.html#INT64_BUILD
In general, building Ipopt against not-yet-installed versions of dependencies is not supported. It should be easier if you build and install one project after another. configure
should then also detect automatically what is available (except for lapack from ThirdParty-Lapack, as this is deprecated) and which flags are needed, in particular if you install everything under the same prefix
. coinbrew
automates this. Ipopt installation instructions are in the docu: https://coin-or.github.io/Ipopt/INSTALL.html