Hint and Tricks
This page is for Bonmin users to share their experience in installing and using (hopefully successfully) the software.
You will find here instructions on how to edit this page and add your comments.
Compiling Bonmin in Ubuntu with the Pardiso Linear Solver
I had problems compiling Bonmin with Pardiso in my Ubuntu machine. After running
$ ../configure -C --with-pardiso="$HOME/lib/libpardiso_GNU_IA32.so"
I got the following error
checking whether user-supplied Pardiso library "/home/rush/lib/libpardiso_GNU_IA32.so" works... configure: error: Pardiso library /home/rush/lib/libpardiso_GNU_IA32.so does not seem to work configure: error: /bin/bash '../../Ipopt/configure' failed for Ipopt
But finally I've figured out how to get it to work. First, install the atlas3 packages which will install some required and optimized blas and lapack libraries. To do so, type (if you prefer apt-get, substitute aptitude with it)
$ sudo aptitude install atlas3-base atlas3-sse atlas3-sse2 altas3-headers
Once installed, follow the instructions from the GettingStarted page, but use the following arguments for the configure script:
$ ../configure -C --with-pardiso="$HOME/lib/libpardiso_GNU_IA32.so" \ --with-blas="/usr/lib/atlas/sse2/libblas.so.3.0" \ --with-lapack="/usr/lib/atlas/sse2/liblapack.so.3.0"
That did it for me, and I hope it helps someone else too.
Configuring and using filterSQP as nlp subsolver
- First you should get a copy of filterSQP. Note that this software is not free or open source, to obtain a copy see [here http://www.mcs.anl.gov/~leyffer/solvers.html].
- Copy the source code directory of filterSQP in the subdirectory ThirdParty/FilterSQP/source of your Bonmin source directory. In ThirdParty/FilterSQP/source you should have a subdirectory src which contain all the sources for filterSQP.
- Rerun configure in the build directory
- make and make install
- Check that the option to change nlp_solver is available by running ./bin/bonmin -= and see if bonmin.nlp_solver appears in the output
- Now to use filterSQP as nlp solver use the option bonmin.nlp_solver filterSQP
Compiling Bonmin in Cygwin with HSL MA57 sparse solver
MA57 cannot be compiled by using gcc-g77. So I followed the following procedure to get it to work:
- Install Bonmin as explained in the main wiki page and in the topic CygwinInstall without downloading any source code in the HSL subfolder of ThirdParty.
- Install the gcc4-fortran package in the Cygwin system.
- Make the libraries libcoinblas.a and libcoinmetis.a from the corresponding ThirdParty folders.
- Make the library libcoinhsl.a. To do that, merge the two files ma57d.f and ddeps.f from the original HSL distribution in one unique file named ma57da.f and save it in the HSL subfolder of ThirdParty. The code source has to be chaged to ma57da.f, the compiler has to be chaged to gfortran, and the libraries libcoinblas.a and libcoinmetis.a have to be linked.
- Finally, install it to generate libhsl.dll. Bonmin.exe can now use it by specifinig the parameter linear_solver MA57.