[Bonmin] Building Bonmin as a dll with MinGW - success!

Ted Ralphs ted at lehigh.edu
Fri Nov 1 18:45:18 EDT 2013


Hi Tony,

Thanks for sharing this information. Today, I was also finally able to
build the whole OS stack with the 64-bit MinGW cross-compiler that comes
bundled with the 64-bit version of CYGWIN. I'll see if I can repeat your
steps in that environment. I want to be able to do the builds in CYGWIN so
I can do unattended remote builds and generate installers automatically.

By the way, I saw the same failure in the Cgl unit test as you. It is
triggered because the objective function value gets slightly smaller after
adding a cut in one of the tests, which technically should not happen, but
it's most likely just an issue with numerics. We probably just need to
relax the requirements of that test a little.

Improved handling of dependencies is definitely on the TODO list---it's
needed also for building Python extensions. Thanks again!

Cheers,

Ted




On Thu, Oct 31, 2013 at 1:49 AM, Tony Kelman <kelman at berkeley.edu> wrote:

>   A few people have asked about building Bonmin or other COIN-OR projects
> as Windows dll’s using MinGW compilers and running the standard configure
> scripts in MSYS. Shared libraries are currently disabled by BuildTools
> configure when using MinGW compilers, but I’ve been looking into how much
> would need to change to make it possible. I’m happy to report I’ve
> succeeded, and anyone interested can have a look at what I needed to do
> (and try to reproduce my steps) in this shell script:
> https://gist.github.com/7244436
>
> This builds and passes all unit tests using TDM-GCC MinGW-64, and all but
> one on standard 32-bit MinGW. There’s a failed assertion during Cgl’s unit
> tests on 32-bit in CglZeroHalf that I may want to look into in more detail.
> I can post the binaries for people to try out if there’s interest.
>
> I needed to make a few little changes to configure scripts and some of the
> Makefiles, and configure and link with several additional flags. The most
> important difference is that Windows dll’s do not allow undefined
> references, so the dependencies have to be explicitly specified and built
> in a specific order. The baseline Makefiles from configure don’t include
> all of this information or respect the dependency ordering as strictly as
> they would need to for this to be further automated.
>
> I’d be happy to discuss with Stefan or others how the build system could
> be improved to make this process simpler. Improved handling of dependencies
> has been requested on other platforms as well, for example in
> https://projects.coin-or.org/BuildTools/ticket/105.
>
> -Tony
>
>
> _______________________________________________
> Bonmin mailing list
> Bonmin at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/bonmin
>
>


-- 
Dr. Ted Ralphs
Associate Professor, Lehigh University
(610) 628-1280
ted 'at' lehigh 'dot' edu
coral.ie.lehigh.edu/~ted
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/bonmin/attachments/20131101/570b4cdc/attachment.html>


More information about the Bonmin mailing list