# Ipopt in different Julia versions

**URL:** <https://discourse.julialang.org/t/ipopt-in-different-julia-versions/36373>\
**Category:** General Usage\
**Tags:** question, package\
**Created:** [March 23, 2020, 2:43am UTC](https://discourse.julialang.org/t/ipopt-in-different-julia-versions/36373 "2020-03-23T02:43:51Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)\
**Post date:** [March 23, 2020, 2:43am UTC](https://discourse.julialang.org/t/ipopt-in-different-julia-versions/36373/1 "2020-03-23T02:43:51Z")

</div>

I get this error with `Ipopt` (version `v0.6.1`):

```julia
ERROR: LoadError: could not load library "C:\Users\plowman\.julia\packages\Ipopt\ruIXY\deps\usr\bin\libipopt-1.dll"
The specified module could not be found.

```

I’m using Julia `v1.3.1` and `v1.4.0`.

I can fix the error by rebuilding with `Pkg.build("Ipopt")` in one Julia version, but then it breaks in the other Julia version.

Is this expected? Is there a way to have `Ipopt` work in both Julia versions (without rebuilding)?

I couldn’t work out what is happening during the the rebuild process, but I did note that the rebuild only works if Julia is started with admin privileges (I’m using Windows 10), otherwise receive the following error. So maybe the issue is something to do with symlinks?

```julia
   Building Ipopt ─────→ `C:\Users\plowman\.julia\packages\Ipopt\ruIXY\deps\build.log`
┌ Error: Error building `Ipopt`:
│ ┌ Warning: On Windows, creating file symlinks requires Administrator privileges
│ └ @ Base.Filesystem file.jl:952
│ ERROR: LoadError: IOError: unlink: permission denied (EACCES)
│ Stacktrace:
│ [1] uv_error at .\libuv.jl:97 [inlined]
│ [2] unlink(::String) at .\file.jl:885
│ [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
│ [4] uninstall(::String; verbose::Bool) at C:\Users\plowman\.julia\packages\BinaryProvider\kcGxO\src\Prefix.jl:390
│ [5] install(::String, ::String; prefix::Prefix, tarball_path::String, force::Bool, ignore_platform::Bool, verbose::Bool) at C:\Users\plowman\.julia\packages\BinaryProvider\kcGxO\src\Prefix.jl:324
│ [6] top-level scope at C:\Users\plowman\.julia\packages\Ipopt\ruIXY\deps\build.jl:84
│ [7] include(::String) at .\client.jl:439
│ [8] top-level scope at none:5
│ in expression starting at C:\Users\plowman\.julia\packages\Ipopt\ruIXY\deps\build.jl:67
│ 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:955
│ [3] probe_symlink_creation(::String) at C:\Users\plowman\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:121
│ [4] probe_platform_engines!(; verbose::Bool) at C:\Users\plowman\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:175
│ [5] probe_platform_engines! at C:\Users\plowman\.julia\packages\BinaryProvider\kcGxO\src\PlatformEngines.jl:169 [inlined]
│ [6] __init__ () at C:\Users\plowman\.julia\packages\BinaryProvider\kcGxO\src\BinaryProvider.jl:28
│ [7] _include_from_serialized(::String, ::Array{Any,1}) at .\loading.jl:697
│ [8] _require_search_from_serialized(::Base.PkgId, ::String) at .\loading.jl:781
│ [9] _require(::Base.PkgId) at .\loading.jl:1006
│ [10] require(::Base.PkgId) at .\loading.jl:927
│ [11] require(::Module, ::Symbol) at .\loading.jl:922
│ [12] include(::String) at .\client.jl:439
│ [13] top-level scope at none:5
└ @ Pkg.Operations D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.4\Pkg\src\Operations.jl:892

```
