Closed davidanthoff closed 9 years ago
Oh, and I should say, the problem on my windows machine is that I get a maximum number of iterations exceeded.
Yeah I have the latest release up on my personal project on the opensuse build service that you can download with WinRPM via
using WinRPM
push!(WinRPM.sources, "http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1")
WinRPM.update()
WinRPM.install("Ipopt")
I've been waiting for the next release of https://github.com/ampl/mp so we can include the command-line AMPL executable as well before submitting to the official default repository.
I executed all of these commands but when I run my problem it is still using Ipopt 3.11.0. Is there anything else I need to do? Your WinRPM commands actually don't replace the Ipopt binaries in the Ipopt.jl package directory, or do they?
No, you'd need to adjust the deps/build.jl
file and rerun Pkg.build("Ipopt")
, or change the library path in deps/deps.jl
(and don't rerun Pkg.build("Ipopt")
). See the tk/winrpm branch for the former.
I checked out the tk/winrpm branch for the Ipopt package, and then did a Pkg.build("Ipopt"). I get the following output/error:
julia> Pkg.build("Ipopt")
INFO: Building WinRPM
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1//repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.1//repodata/repomd.xml
INFO: Building Ipopt
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1//repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.1//repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1/repodata/repomd.xml
INFO: Updating WinRPM package list
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1//repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.1//repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1/repodata/repomd.xml
INFO: Nothing to do
====================================================[ ERROR: Ipopt ]====================================================
Provider PackageManager failed to satisfy dependency libipopt
while loading C:\Users\anthoff\.julia\v0.3\Ipopt\deps\build.jl, in expression starting on line 75
========================================================================================================================
====================================================[ BUILD ERRORS ]====================================================
WARNING: Ipopt had build errors.
- packages with build errors remain installed in C:\Users\anthoff\.julia\v0.3
- build the package(s) and all dependencies with `Pkg.build("Ipopt")`
- build a single package by running its `deps/build.jl` script
========================================================================================================================
julia>
If dlopen(include(Pkg.dir("Ipopt","deps","deps.jl")))
doesn't work, and you got a "Updated Julia's gcc dlls" message earlier in the same session, this is the same issue as the ZMQ problem, should go away after restarting Julia.
The dlopen
doesn't work, there is actually no deps.jl
around to include. I quit julia and restarted it and then tried Pkg.build("Ipopt")
but I just get the same error.
Hm, strange, this isn't what I thought it was then, sorry. What does BinDeps.debug("Ipopt")
say? What branches are Ipopt, WinRPM, and BinDeps on? Does versioninfo(true)
show any other local modifications to them?
I can't see anything unusual for either, but here we go:
julia> BinDeps.debug("Ipopt")
INFO: Reading build script...
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1//repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_13.1//repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1/repodata/repomd.xml
INFO: Downloading http://download.opensuse.org/repositories/home:/kelman:/mingw-coinor/openSUSE_13.1/repodata/repomd.xml
The package declares 1 dependencies.
- Library "libipopt"
- Providers:
- Simple Build Process (can't provide)
- RPM package Ipopt
julia>
and
julia> versioninfo(true)
Julia Version 0.3.5
Commit a05f87b* (2015-01-08 22:33 UTC)
Platform Info:
System: Windows (x86_64-w64-mingw32)
CPU: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
WORD_SIZE: 64
Microsoft Windows [Version 6.3.9600]
uname: MINGW32_NT-6.2 1.0.12(0.46/3/2) 2012-07-05 14:56 i686 unknown
Memory: 15.907882690429688 GB (4401.21484375 MB free)
Uptime: 1.2082867739204e6 sec
Load Avg: 0.0 0.0 0.0
Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz:
speed user nice sys idle irq ticks
#1 3392 MHz 73254671 0 99151375 1035881093 9993312 ticks
#2 3392 MHz 67566953 0 101539906 1039180078 25754937 ticks
#3 3392 MHz 99317890 0 85587750 1023381312 885578 ticks
#4 3392 MHz 107238921 0 52658656 1048389375 1013250 ticks
#5 3392 MHz 76548312 0 78731203 1053007421 629937 ticks
#6 3392 MHz 58626875 0 62308984 1087351078 814187 ticks
#7 3392 MHz 87815156 0 82275750 1038196031 624171 ticks
#8 3392 MHz 61690046 0 47926390 1098670500 577359 ticks
BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
LAPACK: libopenblas
LIBM: libopenlibm
LLVM: libLLVM-3.3
Environment:
HOME = C:\Users\anthoff
HOMEDRIVE = C:
HOMEPATH = \Users\anthoff
LIBPATH = C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\LIB;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\ATLMFC\LIB;C:\Program Files (x86)\Windows Kits\8.1\References\CommonConfiguration\Neutral;C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1\ExtensionSDKs\Microsoft.VCLibs\12.0\References\CommonConfiguration\neutral;
PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.RB;.RBW;.CPL
TERM = cygwin
Package Directory: C:\Users\anthoff\.julia\v0.3
20 required packages:
- ArrayViews 0.4.8
- Autoreload 0.2.0
- Compat 0.2.12
- DataFrames 0.6.1
- DataFramesMeta 0.0.1
- Datetime 0.1.7
- Distributions 0.6.3+ fixmodeforgamma
- GLPKMathProgInterface 0.1.13
- Gadfly 0.3.11
- IJulia 0.1.16+ rebasedsetup
- Ipopt 0.1.12+ tk/winrpm
- Jewel 1.0.4
- JuMP 0.8.0
- NLsolve 0.3.0
- NamedArrays 0.4.1
- ProfileView 0.0.9
- PyPlot 1.5.1
- RDatasets 0.1.1
- Taro 0.1.2
- Winston 0.11.7
61 additional packages:
- BinDeps 0.3.7
- Borg 0.0.0- master (unregistered)
- Cairo 0.2.24
- Calculus 0.1.5
- Codecs 0.1.3
- Color 0.4.1
- Compose 0.3.11
- Contour 0.0.6
- DataArrays 0.2.11
- DataStructures 0.3.5
- Dates 0.3.2
- Distances 0.2.0
- DualNumbers 0.1.2
- FactCheck 0.2.5
- FixedPointNumbers 0.0.6
- GLPK 0.2.14
- GZip 0.2.13
- Graphics 0.1.0
- Graphs 0.5.2
- Grid 0.3.7
- Hexagons 0.0.2
- IAMF 0.0.0- master
- ImageView 0.1.11
- Images 0.4.31
- ImmutableArrays 0.0.6
- IniFile 0.2.4
- Iterators 0.1.7
- JSON 0.4.1
- JavaCall 0.2.0
- JuDP 0.0.0- master (unregistered)
- JuliaParser 0.6.2
- KernelDensity 0.1.0
- Knitro 0.0.0- master
- LNR 0.0.1
- LaTeXStrings 0.1.2
- Lazy 0.8.3
- LibExpat 0.0.6
- Loess 0.0.3
- MathProgBase 0.3.9
- Memoize 0.0.0
- NaNMath 0.0.2
- Nettle 0.1.8
- Optim 0.4.0
- PDMats 0.3.1
- PyCall 0.7.3
- REPLCompletions 0.0.3
- Reexport 0.0.2
- Requires 0.1.1
- ReverseDiffSparse 0.2.2
- SHA 0.0.3
- SIUnits 0.0.2
- Showoff 0.0.3
- SortingAlgorithms 0.0.2
- StatsBase 0.6.12
- TexExtensions 0.0.2
- Tk 0.2.17
- URIParser 0.0.4
- WinCall 0.0.0- master (unregistered)
- WinRPM 0.1.6
- ZMQ 0.1.16
- Zlib 0.1.7
julia>
Don't know why BinDeps isn't registering that the "RPM package Ipopt" can provide libipopt, I'd have to walk through BinDeps' dependency code which is never fun. Manually doing using WinRPM; WinRPM.install("Ipopt")
might work but that should really be happening automatically here...
I tried this on a different machine now, and there it works... Very strange...
Is the problematic machine using a source build of Julia or something?
I deleted the package directory on that machine and added the packages fresh, now everything works.
I'll keep this issue open until your winrpm branch is merged into master?
Thanks, as always, for helping out!
If you have some large-ish problems that solve correctly with both, it would be useful to compare the performance between the two. I'm hoping there shouldn't be significant differences but haven't done much testing so far.
The one model I have right now does not solve on 3.11.0 (at least not with the default iteration limit), but does solve in about 150 iterations on 3.12.1. Happy to give you access to that repo if you want to try and play around, just send me an email with your bitbucket account name and I'll let you know the details. The model is not large, though...
closed by #29
I currently have a JuMP problem that solves on juliabox, but not on my local (windows) machine. The only difference between the two setups that I was able to find is the version of Ipopt: juliabox is on 3.11.7, whereas my local machine is on 3.11.0 (no custom install, just what Ipop.jl brings in the box).
Could the bundled Ipopt version for windows be updated?
Also, if someone from the Ipopt.jl or JuMP team wants to try this out, I'd be happy to give you access to the bitbucket repo with the replication code. Thanks!
@tkelman, @mlubin