Installing Ipopt

julia> Pkg.build("Ipopt")
   Building CodecZlib ─→ `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\CodecZlib\5t9zO\deps\build.log`
   Building MbedTLS ───→ `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\MbedTLS\a1JFn\deps\build.log`
   Building CodecBzip2 → `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\CodecBzip2\T5yr7\deps\build.log`
   Building Ipopt ─────→ `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\Ipopt\ruIXY\deps\build.log`
┌ Error: Error building `Ipopt`:
│ ERROR: LoadError: LibraryProduct(nothing, ["libipopt"], :libipopt, "Prefix(C:\\Users\\yaramasv\\.juliapro\\JuliaPro_v1.3.1-1\\packages\\Ipopt\\ruIXY\\deps\\usr)") is not satisfied, cannot generate deps.jl!
│ Stacktrace:
│  [1] error(::String) at .\error.jl:33
│  [2] #write_deps_file#175(::Bool, ::Bool, ::typeof(write_deps_file), ::String, ::Array{Product,1}) at C:\Users\julia\AppData\Local\Julia-1.3.1\share\julia\stdlib\v1.3\BinaryProvider\src\Products.jl:419
│  [3] (::BinaryProvider.var"#kw##write_deps_file")(::NamedTuple{(:verbose,),Tuple{Bool}}, ::typeof(write_deps_file), ::String, ::Array{Product,1}) at .\tuple.jl:0
│  [4] top-level scope at C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\Ipopt\ruIXY\deps\build.jl:89
│  [5] include at .\boot.jl:328 [inlined]
│  [6] include_relative(::Module, ::String) at .\loading.jl:1105
│  [7] include(::Module, ::String) at .\Base.jl:31
│  [8] include(::String) at .\client.jl:424
│  [9] top-level scope at none:5
│ in expression starting at C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\Ipopt\ruIXY\deps\build.jl:89
│ caused by [exception 1]
│ IOError: symlink: operation not permitted (EPERM)
│ Stacktrace:
│  [1] uv_error at .\libuv.jl:97 [inlined]
│  [2] symlink(::String, ::String) at .\file.jl:851
│  [3] probe_symlink_creation(::String) at C:\Users\julia\AppData\Local\Julia-1.3.1\share\julia\stdlib\v1.3\BinaryProvider\src\PlatformEngines.jl:125
│  [4] #unpack#111(::Bool, ::typeof(unpack), ::String, ::String) at C:\Users\julia\AppData\Local\Julia-1.3.1\share\julia\stdlib\v1.3\BinaryProvider\src\PlatformEngines.jl:764
│  [5] #unpack at .\tuple.jl:0 [inlined]
│  [6] #install#147(::Prefix, ::String, ::Bool, ::Bool, ::Bool, ::typeof(install), ::String, ::String) at C:\Users\julia\AppData\Local\Julia-1.3.1\share\julia\stdlib\v1.3\BinaryProvider\src\Prefix.jl:347
│  [7] (::BinaryProvider.var"#kw##install")(::NamedTuple{(:prefix, :force, :verbose),Tuple{Prefix,Bool,Bool}}, ::typeof(install), ::String, ::String) at .\tuple.jl:0
│  [8] top-level scope at C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\Ipopt\ruIXY\deps\build.jl:84
│  [9] include at .\boot.jl:328 [inlined]
│  [10] include_relative(::Module, ::String) at .\loading.jl:1105
│  [11] include(::Module, ::String) at .\Base.jl:31
│  [12] include(::String) at .\client.jl:424
│  [13] top-level scope at none:5
└ @ Pkg.Operations C:\Users\julia\AppData\Local\Julia-1.3.1\share\julia\stdlib\v1.3\Pkg\src\Operations.jl:898

I really don’t know what’s happening here? Please help me.
Thank you.

Maybe this helps: https://blogs.windows.com/windowsdeveloper/2016/12/02/symlinks-windows-10/, apparently you have to activate developer mode https://docs.microsoft.com/en-us/windows/uwp/get-started/enable-your-device-for-development?redirectedfrom=MSDN.

1 Like

Thank you mauro3 for your reply, using the link you have provided I was able to solve the second part of error, but first part remained same and it’s giving me the same error.

julia> Pkg.build("Ipopt")
   Building CodecZlib ─→ `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\CodecZlib\5t9zO\deps\build.log`
   Building MbedTLS ───→ `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\MbedTLS\a1JFn\deps\build.log`
   Building CodecBzip2 → `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\CodecBzip2\T5yr7\deps\build.log`
   Building Ipopt ─────→ `C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\Ipopt\ruIXY\deps\build.log`
┌ Error: Error building `Ipopt`:
│ ERROR: LoadError: LibraryProduct(nothing, ["libipopt"], :libipopt, "Prefix(C:\\Users\\yaramasv\\.juliapro\\JuliaPro_v1.3.1-1\\packages\\Ipopt\\ruIXY\\deps\\usr)") is not satisfied, cannot generate deps.jl!
│ Stacktrace:
│  [1] error(::String) at .\error.jl:33
│  [2] #write_deps_file#175(::Bool, ::Bool, ::typeof(write_deps_file), ::String, ::Array{Product,1}) at C:\Users\julia\AppData\Local\Julia-1.3.1\share\julia\stdlib\v1.3\BinaryProvider\src\Products.jl:419
│  [3] (::BinaryProvider.var"#kw##write_deps_file")(::NamedTuple{(:verbose,),Tuple{Bool}}, ::typeof(write_deps_file), ::String, ::Array{Product,1}) at .\tuple.jl:0
│  [4] top-level scope at C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\Ipopt\ruIXY\deps\build.jl:89
│  [5] include at .\boot.jl:328 [inlined]
│  [6] include_relative(::Module, ::String) at .\loading.jl:1105
│  [7] include(::Module, ::String) at .\Base.jl:31
│  [8] include(::String) at .\client.jl:424
│  [9] top-level scope at none:5
│ in expression starting at C:\Users\yaramasv\.juliapro\JuliaPro_v1.3.1-1\packages\Ipopt\ruIXY\deps\build.jl:89
└ @ Pkg.Operations C:\Users\julia\AppData\Local\Julia-1.3.1\share\julia\stdlib\v1.3\Pkg\src\Operations.jl:898

Do you think is there any other changes i need to do?. And I did not understand this part in error at all cannot generate deps.jl!

I don’t really know. Two things I would try. Check that this path exists:

If not, does it help if you create it? If that doesn’t help, have you tried to completely remove Ipopt and start from scratch? Other than that, I don’t know and someone else needs to help. If you don’t get help here within about 24h, then maybe make an issue with Ipopt.jl.

1 Like

Thanks for you time mauro3.

I have checked, the path exists.

I have also tried to remove Ipopt completely and started from scratch it didn’t help.

1 Like

Can you install other packages?

What happens if you run Pkg.add("GLPK")?

What happens if you download normal Julia, i.e., not Julia pro?

I have uninstalled both julia pro and julia of my current versions and downloaded the versions and it is working perfectly , I really don’t know what happened over there.

But, anyways thanks for answering my question.

This issue is specific to JuliaPro v1.3.1-1 , this has been fixed in the newer versions of JuliaPro, if you don’t want to upgrade to the newer version, then you can execute following commands in your JuliaPro REPL to fix this issue

using BinaryProvider
Core.eval(BinaryProvider, :(default_platkey = platform_key_abi(string(Sys.MACHINE, compiler_abi_str(detect_compiler_abi())))))
include(joinpath(DEPOT_PATH[1],"packages","Ipopt","ruIXY","deps","build.jl"))
using Ipopt

Thanks for getting back to me.