<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v =
"urn:schemas-microsoft-com:vml" xmlns:o =
"urn:schemas-microsoft-com:office:office" xmlns:w =
"urn:schemas-microsoft-com:office:word" xmlns:m =
"http://schemas.microsoft.com/office/2004/12/omml"><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<META name=Generator content="Microsoft Word 15 (filtered medium)">
<STYLE><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></STYLE>
</HEAD>
<BODY lang=EN-GB dir=ltr link=#0563c1 vLink=#954f72>
<DIV dir=ltr>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: 'Calibri'; COLOR: #000000">
<DIV>Guy,</DIV>
<DIV> </DIV>
<DIV>Happy to help, I tend to respond quickly if something comes across the list
while I’m online and it’s a problem that I’ve seen before.</DIV>
<DIV> </DIV>
<DIV>That looks like a complete set of dll’s. “make install” will put them all
in one place, by default in build/bin. Ipopt’s “make test” isn’t currently set
up to copy dll’s into the test folder or add build/bin to the path temporarily
while running the tests, the dll capability from the standard ../configure; make
build is relatively recent. You could do one of those steps manually. The
location of the dll’s for libgcc, libgfortran etc varies depending on your
compiler installation (and whether you’re using MSYS, Cygwin, cross-compiling,
etc), so it’s tough to figure out the right way to do this automatically in a
way that would always work. To get the test executables to run, all dll
dependencies need to be either in the same folder as the executable
(build/Ipopt/test) or on the path.</DIV>
<DIV> </DIV>
<DIV>In response to your other email, I was going to suggest that you might be
able to try cross-compiling if you have access to any Linux machines running
up-to-date Ubuntu, Fedora, openSUSE, or Arch distributions that you can install
packages on. But maybe that’s more complicated, it can be faster to build Ipopt
and all its dependencies that way (Windows builds can be pretty slow) but maybe
not worth the trouble.</DIV>
<DIV> </DIV>
<DIV>Can you tell me exactly which MinGW version you installed and where from?
There are subtle differences in threading model, exception handling, and other
version incompatibilities so it’s best to stick with the same libgcc,
libgfortran, etc that were used to compile a library whenever possible. Perhaps
the easiest way to install my opensuse builds would be through a Julia package
called WinRPM.jl that’s specifically designed to parse the rpm metadata and
download all the dependencies properly. Julia itself is kind of a big download
(<A title=http://julialang.org/downloads/
style='href: "http://julialang.org/downloads/"'>http://julialang.org/downloads/</A>),
but you might find you like it better than Matlab or Python. There are some
really smart guys at MIT working on an optimization modeling language called
JuMP (<A title=http://jump.readthedocs.org/en/latest/
style='href: "http://jump.readthedocs.org/en/latest/"'>http://jump.readthedocs.org/en/latest/</A>),
that does automatic differentiation and interfaces to Ipopt along with a bunch
of other optimization solvers.</DIV>
<DIV> </DIV>
<DIV>I’m not sure whether this will work within the restrictions of your
network, but if you want to try this route, you should be able to get my Ipopt
dll’s and all the correct dependencies by running the following commands in
Julia:</DIV>
<DIV>Pkg.add("WinRPM")</DIV>
<DIV>using WinRPM</DIV>
<DIV>push!(WinRPM.sources,
"http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1")</DIV>
<DIV>WinRPM.update()</DIV>
<DIV>WinRPM.install("coin-or-Ipopt")</DIV>
<DIV>Pkg.dir("WinRPM","deps","usr",Sys.MACHINE,"sys-root","mingw","bin")</DIV>
<DIV> </DIV>
<DIV>If that all works, you should get a whole set of dll’s and dependencies
inside the folder returned by Pkg.dir(...). I recommend checking the DLL’s under
Dependency Walker to verify all the dependencies are right.</DIV>
<DIV> </DIV>
<DIV style="TEXT-DECORATION: ; FONT-FAMILY: ; COLOR: ; DISPLAY: inline">
<DIV style="FONT-FAMILY: ; LINE-HEIGHT: normal">
<DIV><FONT style="size: 3" face=Calibri>You can also download the builds
manually from <A
title=http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1/noarch/mingw32-coin-or-Ipopt-3.11.9-10.13.noarch.rpm
style='href: "http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1/noarch/mingw32-coin-or-Ipopt-3.11.9-10.13.noarch.rpm"'>http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1/noarch/mingw32-coin-or-Ipopt-3.11.9-10.13.noarch.rpm</A>
(open the rpm file in 7zip, keep going deeper internally until you see a bin
directory) but you’ll have to grab the dependencies separately. The dependency
packages will be either in <A
title=https://build.opensuse.org/project/show/home:kelman:mingw-coinor
style='href: "https://build.opensuse.org/project/show/home:kelman:mingw-coinor"'>https://build.opensuse.org/project/show/home:kelman:mingw-coinor</A>
or <A title=https://build.opensuse.org/project/show/windows:mingw:win32
style='href: "https://build.opensuse.org/project/show/windows:mingw:win32"'>https://build.opensuse.org/project/show/windows:mingw:win32</A>
(or <A title=https://build.opensuse.org/project/show/windows:mingw:win64
style='href: "https://build.opensuse.org/project/show/windows:mingw:win64"'>https://build.opensuse.org/project/show/windows:mingw:win64</A>
for 64 bit).</FONT></DIV>
<DIV> </DIV>
<DIV>-Tony</DIV>
<DIV> </DIV>
<DIV>P.S: I like seeing multiple teams able to win, the Canadian GP and the last
couple races have been very exciting to watch.</DIV>
<DIV></DIV> </DIV></DIV>
<DIV
style='FONT-SIZE: small; TEXT-DECORATION: none; FONT-FAMILY: "Calibri"; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; DISPLAY: inline'>
<DIV style="FONT: 10pt tahoma">
<DIV><FONT size=3 face=Calibri></FONT> </DIV>
<DIV style="BACKGROUND: #f5f5f5">
<DIV style="font-color: black"><B>From:</B> <A
title=Guy.Charles@redbulltechnology.com
href="mailto:Guy.Charles@redbulltechnology.com">Guy Charles</A> </DIV>
<DIV><B>Sent:</B> Tuesday, September 02, 2014 9:08 AM</DIV>
<DIV><B>To:</B> <A title=kelman@berkeley.edu
href="mailto:kelman@berkeley.edu">Tony Kelman</A> ; <A
title=ipopt@list.coin-or.org
href="mailto:ipopt@list.coin-or.org">ipopt@list.coin-or.org</A> </DIV>
<DIV><B>Subject:</B> RE: [Ipopt] Issues building dlls with MinGW /
MSys</DIV></DIV></DIV>
<DIV> </DIV></DIV>
<DIV
style='FONT-SIZE: small; TEXT-DECORATION: none; FONT-FAMILY: "Calibri"; FONT-WEIGHT: normal; COLOR: #000000; FONT-STYLE: normal; DISPLAY: inline'>
<DIV class=WordSection1>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Tony,<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Thanks again - this is easily
getting beyond my comfort zone, so I appreciate the detailed help.
<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">I don't get the errors using the
additional configs: "coin_skip_warn_cflags=yes coin_skip_warn_cxxflags=yes", but
I'm not sure that I'm necessarily getting to the end of the make process
sucessfully. NB - still using the 3.11.9 source code without your last
fixes, but I'm not compiling in HSL at the moment to keep things as simple as
possible. No I'm not building 64 bit, but I potentially will be at a later
date.<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">There are a number of dll files
produced and scattered around the build/Ipopt directory:<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN
style="COLOR: #1f497d">\build\ThirdParty\ASL\.libs\libcoinasl-l.dll<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN
style="COLOR: #1f497d">\build\ThirdParty\Blas\.libs\libcoinblas-l.dll<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN
style="COLOR: #1f497d">\build\ThirdParty\Lapack\.libs\libcoinlapack-l.dll<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN
style="COLOR: #1f497d">\build\ThirdParty\Metis\.libs\libcoinmetis-l.dll<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN
style="COLOR: #1f497d">\build\ThirdParty\Mumps\.libs\libcoinmumps-l.dll<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN
style="COLOR: #1f497d">\build\Ipopt\src\Interfaces\.libs\libipopt-1.dll<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN
style="COLOR: #1f497d">\build\Ipopt\src\Apps\AmplSolver\.libs\libipoptamplinterface-1.dll<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Are these all the dll files that
get built? Should there be more, or more steps to collect them into one
place so that "make test" works? make test complains that it can't find
libipopt-1.dll, and I don't seem to be able to find a location to put this in to
get the test to work. <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">There is only the ipopt.exe file
produced in the build\bin folder.<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Again, not my usual area of work
so appreciating all the help. I'll try out a few more of the alternatives
that you've suggested too.<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">cheers,<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Guy<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN> </P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">PS - Glad to hear you're an F1
fan - hope you're a Red Bull supporter! <o:p></o:p></SPAN></P></DIV><BR
clear=both>______________________________________________________________________<BR>This
email has been scanned by the Symantec Email Security.cloud service.<BR>For more
information please visit
http://www.symanteccloud.com<BR>______________________________________________________________________<BR></DIV></DIV></DIV></BODY></HTML>