ReadOnlyMemoryError using Ipopt not fixed in 0.51

ReadOnlyMemoryError()

in solveProblem(::Ipopt.IpoptProblem) at C:\Users\Frank.julia\v0.5\Ipopt\src\Ipopt.jl:304
in optimize!(::Ipopt.IpoptMathProgModel) at C:\Users\Frank.julia\v0.5\Ipopt\src\IpoptSolverInterface.jl:120
in #solvenlp#150(::Bool, ::Function, ::JuMP.Model, ::JuMP.ProblemTraits) at C:\Users\Frank.julia\v0.5\JuMP\src\nlp.jl:1208
in (::JuMP.#kw##solvenlp)(::Array{Any,1}, ::JuMP.#solvenlp, ::JuMP.Model, ::JuMP.ProblemTraits) at .<missing>:0
in #solve#97(::Bool, ::Bool, ::Bool, ::Array{Any,1}, ::Function, ::JuMP.Model) at C:\Users\Frank.julia\v0.5\JuMP\src\solvers.jl:139
in packcircles(::Array{Int64,1}, ::Int64) at .\In[6]:36

See discussion at https://github.com/JuliaOpt/Ipopt.jl/issues/81.

I tried the multiple step approach from xqrongm. That didn’t fix the problem

The problem also exists in today’s version 0.6

I cannot reproduce the issue on 64-bit 0.6.0-pre.alpha.0 with a completely clean .julia/v0.6 directory. Pkg.add("Ipopt") and Pkg.test("Ipopt") run successfully.

I did the test using IJulia and didn’t change the kernel to 0.6

I take it that the problem will not be fixed in 0.51

It was already fixed, as far as anyone else can tell. Your WinRPM downloads are probably stale. Try running the following.

using WinRPM
pkgs = String[]
for pkg in eachline(WinRPM.installedlist)
    name = match(r"mingw64-(.*)", last(split(pkg)))
    if name !== nothing && !isempty(WinRPM.lookup(name[1]))
        push!(pkgs, name[1])
    end
end
WinRPM.install(pkgs)

Yes, that fixed the problem.