coin-or/Ipopt

Ipopt unable to find MA57 during configuration

JeffR1992 opened this issue · 5 comments

I'm using a clean install of Ubuntu 22.04 and am trying to build and install Ipopt with the MA57 linear solver from source (I obtained a license from http://hsl.rl.ac.uk/). To install MA57, I'm following the instructions given in the coin-or-tools/ThirdParty-HSL. I perform the following terminal commands:

git clone https://github.com/coin-or-tools/ThirdParty-HSL.git
cd ThirdParty-HSL
mkdir build
cd build
cp /home/jeff/Downloads/ma57-3.11.2.tar.gz.tar .
tar -xf ma57-3.11.2.tar.gz.tar
mv ma57-3.11.2 coinhsl
../configure

Configure gives the following output:

checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for gfortran... gfortran
checking whether the compiler supports GNU Fortran 77... yes
checking whether gfortran accepts -g... yes
checking how to get verbose linking output from gfortran... -v
checking for Fortran 77 libraries of gfortran...  -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. -lgfortran -lm -lquadmath
checking for dummy main to link with Fortran 77 libraries... none
checking for Fortran 77 name-mangling scheme... lower case, underscore, no extra underscore
checking whether gfortran understands -c and -o together... yes
checking for gfortran... gfortran
checking whether the compiler supports GNU Fortran... yes
checking whether gfortran accepts -g... yes
checking whether gfortran understands -c and -o together... yes
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking the archiver (ar) interface... ar
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gfortran option to produce PIC... -fPIC
checking if gfortran PIC flag -fPIC works... yes
checking if gfortran static flag -static works... yes
checking if gfortran supports -c -o file.o... yes
checking if gfortran supports -c -o file.o... (cached) yes
checking whether the gfortran linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gfortran option to produce PIC... -fPIC
checking if gfortran PIC flag -fPIC works... yes
checking if gfortran static flag -static works... yes
checking if gfortran supports -c -o file.o... yes
checking if gfortran supports -c -o file.o... (cached) yes
checking whether the gfortran linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
configure: libtool version info: -version-number 2:2:1
checking for pkgconf... no
checking for pkg-config... pkg-config
checking pkg-config is at least version 0.16.0... yes: 0.29.2
configure: pkg-config path is "/usr/local/lib/pkgconfig:"
checking for MC19... no
checking for MA27... no
checking for MA28... no
checking for MA57... no
checking for MA77... no
checking for MA86... no
checking for MA97... no
checking for MC19S... no
checking for MA27S... no
checking for MA28S... no
checking for MA57S... no
checking for MA77S... no
checking for MA86S... no
checking for MA97S... no
checking for C interface to MC68... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating coinhsl.pc
config.status: creating config.h
config.status: creating CoinHslConfig.h
config.status: executing depfiles commands
config.status: executing libtool commands
configure: Configuration of CoinHSL successful

Once the configuration script has run, I then run the following commands as instructed by the ThirdParty-HSL repo:

make
sudo make install

Once MA57 is installed I then try to install Ipopt using the instructions given by https://coin-or.github.io/Ipopt/INSTALL.html. I perform the following terminal commands:

git clone https://github.com/coin-or/Ipopt.git
cd Ipopt
mkdir build
cd build
../configure

Configure gives the following output:

checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... `yes`
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking dependency style of g++... gcc3
checking whether g++ understands -c and -o together... yes
checking for gfortran... gfortran
checking whether the compiler supports GNU Fortran 77... yes
checking whether gfortran accepts -g... yes
checking how to get verbose linking output from gfortran... -v
checking for Fortran 77 libraries of gfortran...  -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. -lgfortran -lm -lquadmath
checking for dummy main to link with Fortran 77 libraries... none
checking for Fortran 77 name-mangling scheme... lower case, underscore, no extra underscore
checking whether gfortran understands -c and -o together... yes
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking the archiver (ar) interface... ar
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gfortran option to produce PIC... -fPIC
checking if gfortran PIC flag -fPIC works... yes
checking if gfortran static flag -static works... yes
checking if gfortran supports -c -o file.o... yes
checking if gfortran supports -c -o file.o... (cached) yes
checking whether the gfortran linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
configure: libtool version info: -version-number 3:14:12
configure: Assuming that CXXLIBS is -lstdc++ -lm.
configure: configuring doxygen documentation options
checking for doxygen... no
checking for latex... no
checking for dot... YES
checking for library containing cos... -lm
checking for pkgconf... no
checking for pkg-config... pkg-config
checking pkg-config is at least version 0.16.0... yes: 0.29.2
configure: pkg-config path is "/usr/local/lib/pkgconfig:"
checking for LAPACK... yes: generic module (lapack.pc blas.pc)
checking for package ASL... no
checking for package Mumps... no
checking for MPI_Initialized... no
checking for package HSL... yes
checking for function ma27ad_ in -L/usr/local/lib -lcoinhsl   ... no
checking for function ma27ad in -L/usr/local/lib -lcoinhsl   ... no
checking for function MA27AD_ in -L/usr/local/lib -lcoinhsl   ... no
checking for function MA27AD in -L/usr/local/lib -lcoinhsl   ... no
checking for function ma27ad__ in -L/usr/local/lib -lcoinhsl   ... no
checking for function ma27ad_ in -L/usr/local/lib -lcoinhsl   ... no
checking for function MA27AD__ in -L/usr/local/lib -lcoinhsl   ... no
checking for function MA27AD_ in -L/usr/local/lib -lcoinhsl   ... no
configure: error: Provided package HSL is not working or does not contain MA27. See config.log for details on failed checks.

It says "Provided package HSL is not working or does not contain MA27". However, I just installed MA57 following the ThirdParty-HSL repo instructions. I've re-read both the ThirdParty-HSL and Ipopt installation instructions, but haven't been able to identify where I went wrong. Any help solving this issue would be greatly appreciated.

Finally, running cat config.log I get the following (I've printed out only to the first error I get, since the rest of the log is extremely long):

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by Ipopt configure 3.14.12, which was
generated by GNU Autoconf 2.71.  Invocation command line was

  $ ../configure

## --------- ##
## Platform. ##
## --------- ##

hostname = Jeff
uname -m = x86_64
uname -r = 5.15.90.1-microsoft-standard-WSL2
uname -s = Linux
uname -v = #1 SMP Fri Jan 27 02:56:13 UTC 2023

/usr/bin/uname -p = x86_64
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /usr/local/sbin/
PATH: /usr/local/bin/
PATH: /usr/sbin/
PATH: /usr/bin/
PATH: /sbin/
PATH: /bin/
PATH: /usr/games/
PATH: /usr/local/games/
PATH: /usr/lib/wsl/lib/
PATH: /mnt/c/Windows/system32/
PATH: /mnt/c/Windows/
PATH: /mnt/c/Windows/System32/Wbem/
PATH: /mnt/c/Windows/System32/WindowsPowerShell/v1.0/
PATH: /mnt/c/Windows/System32/OpenSSH/
PATH: /mnt/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common/
PATH: /mnt/c/Program Files/Intel/WiFi/bin/
PATH: /mnt/c/Program Files/Common Files/Intel/WirelessCommon/
PATH: /mnt/c/Program Files/dotnet/
PATH: /mnt/c/WINDOWS/system32/
PATH: /mnt/c/WINDOWS/
PATH: /mnt/c/WINDOWS/System32/Wbem/
PATH: /mnt/c/WINDOWS/System32/WindowsPowerShell/v1.0/
PATH: /mnt/c/WINDOWS/System32/OpenSSH/
PATH: /mnt/c/Program Files/NVIDIA Corporation/NVIDIA NvDLISR/
PATH: /mnt/c/Program Files/Git/cmd/
PATH: /mnt/c/Users/asr/AppData/Local/Streamlink/bin/
PATH: /mnt/c/Users/asr/AppData/Local/Microsoft/WindowsApps/
PATH: /mnt/c/Users/asr/AppData/Local/Programs/Microsoft VS Code/bin/
PATH: /snap/bin/


## ----------- ##
## Core tests. ##
## ----------- ##

configure:3479: looking for aux files: ltmain.sh ar-lib compile missing install-sh config.guess config.sub
configure:3492:  trying ../
configure:3521:   ../ltmain.sh found
configure:3521:   ../ar-lib found
configure:3521:   ../compile found
configure:3521:   ../missing found
configure:3503:   ../install-sh found
configure:3521:   ../config.guess found
configure:3521:   ../config.sub found
configure:3647: checking build system type
configure:3662: result: x86_64-pc-linux-gnu
configure:3789: checking host system type
configure:3803: result: x86_64-pc-linux-gnu
configure:3840: checking for a BSD-compatible install
configure:3913: result: /usr/bin/install -c
configure:3924: checking whether build environment is sane
configure:3979: result: yes
configure:4138: checking for a race-free mkdir -p
configure:4182: result: /usr/bin/mkdir -p
configure:4189: checking for gawk
configure:4210: found /usr/bin/gawk
configure:4221: result: gawk
configure:4232: checking whether make sets $(MAKE)
configure:4255: result: yes
configure:4325: checking whether make supports nested variables
configure:4343: result: yes
configure:4356: checking whether to enable maintainer-specific portions of Makefiles
configure:4366: result: no
configure:4558: checking whether make supports the include directive
configure:4573: make -f confmf.GNU && cat confinc.out
this is the am__doit target
configure:4576: $? = 0
configure:4595: result: yes (GNU style)
configure:4740: checking for gcc
configure:4761: found /usr/bin/gcc
configure:4772: result: gcc
configure:4803: checking for C compiler version
configure:4812: gcc --version >&5
gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:4823: $? = 0
configure:4812: gcc -v >&5
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04)
... rest of stderr output deleted ...
configure:4823: $? = 0
configure:4812: gcc -V >&5
gcc: error: unrecognized command-line option '-V'
gcc: fatal error: no input files
compilation terminated.

Does this mean that the issue is because of the -V command that is called with gcc, or is this just a red herring? Any help or advice would be appreciated, thanks.

I think the instructions start with

Obtain a tarball with Coin-HSL source code from http://www.hsl.rl.ac.uk/ipopt/.

But you downloaded the separate MA57 package instead.

Maybe you can get the ThirdParty-HSL buildsystem to work with the MA57 package, too, I haven't tried, but don't unpack the source in the build directory.

Ipopt's build system currently always requires MA27 as well (mostly out of lazyness).

I have the same problem, but with MA27. I donwloaded the HSL code and installed with ThirdPArty-ASL. When executing the following command:

./configure --with-hsl-cflags=/Documentos/ThirdParty-ASL/coinhsl

I get:

checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking dependency style of g++... gcc3
checking whether g++ understands -c and -o together... yes
checking for gfortran... gfortran
checking whether the compiler supports GNU Fortran 77... yes
checking whether gfortran accepts -g... yes
checking how to get verbose linking output from gfortran... -v
checking for Fortran 77 libraries of gfortran...  -L/usr/lib/gcc/x86_64-linux-gnu/9 -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/9/../../.. -lgfortran -lm -lquadmath
checking for dummy main to link with Fortran 77 libraries... none
checking for Fortran 77 name-mangling scheme... lower case, underscore, no extra underscore
checking whether gfortran understands -c and -o together... yes
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking the archiver (ar) interface... ar
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gfortran option to produce PIC... -fPIC
checking if gfortran PIC flag -fPIC works... yes
checking if gfortran static flag -static works... yes
checking if gfortran supports -c -o file.o... yes
checking if gfortran supports -c -o file.o... (cached) yes
checking whether the gfortran linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
configure: libtool version info: -version-number 3:14:12
configure: Assuming that CXXLIBS is -lstdc++ -lm.
configure: configuring doxygen documentation options
checking for doxygen... no
checking for latex... yes
checking for dot... NO
checking for library containing cos... -lm
checking for pkgconf... no
checking for pkg-config... pkg-config
checking pkg-config is at least version 0.16.0... yes: 0.29.1
configure: pkg-config path is "/usr/local/lib/pkgconfig:"
checking for LAPACK... yes: generic module (lapack.pc blas.pc)
checking for package ASL... yes
checking for package Mumps... no
checking for MPI_Initialized... no
checking for package HSL... yes
Must specify package names on the command line
Must specify package names on the command line
checking for function ma27ad_ in    ... no
checking for function ma27ad in    ... no
checking for function MA27AD_ in    ... no
checking for function MA27AD in    ... no
checking for function ma27ad__ in    ... no
checking for function ma27ad_ in    ... no
checking for function MA27AD__ in    ... no
checking for function MA27AD_ in    ... no
configure: error: Provided package HSL is not working or does not contain MA27. See config.log for details on failed checks.

Any idea of what to do? I am desperate, I have been trying to make this work for two weeks, and can't find a solution online

I don't get how you installed HSL code with ThirdParty-ASL. The latter is for the AMPL interface.

If you installed HSL with the same --prefix as you are going to build Ipopt, then Ipopt's configure should just pick up the HSL lib. Specifying --with-hsl-cflags will disable this.

Finally, --with-hsl-cflags is for compiler flags to builds against HSL. /Documentos/ThirdParty-ASL/coinhsl is not a compiler flag.

I don't get how you installed HSL code with ThirdParty-ASL. The latter is for the AMPL interface.

If you installed HSL with the same --prefix as you are going to build Ipopt, then Ipopt's configure should just pick up the HSL lib. Specifying --with-hsl-cflags will disable this.

Finally, --with-hsl-cflags is for compiler flags to builds against HSL. /Documentos/ThirdParty-ASL/coinhsl is not a compiler flag.

Thank you very much for your response. I managed to install it with MUMPS following your indications, and will try again with HSL

I was able to install it using CoinBrew and Msys2 on the Windows platform.