Precompilation error with Julia 1.5.3 (Windows 10 64-bit)

Hi All,

Is anyone else facing the same issue as well? I had installation of Julia 1.5.2 earlier. And was using packages like IJulia. Now I installed Julia 1.5.3. When I lauch Julia 1.5.3 and type using IJulia I see the following dump.

[ Info: Precompiling IJulia [7073ff75-c697-5162-941a-fcdaad2a7d2a]
ERROR: LoadError: IOError: unlink: permission denied (EACCES)
Stacktrace:
 [1] uv_error at .\libuv.jl:97 [inlined]
 [2] unlink(::String) at .\file.jl:918
 [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
 [4] compilecache(::Base.PkgId, ::String) at .\loading.jl:1300
 [5] _require(::Base.PkgId) at .\loading.jl:1030
 [6] require(::Base.PkgId) at .\loading.jl:928
 [7] require(::Module, ::Symbol) at .\loading.jl:923
 [8] include(::Function, ::Module, ::String) at .\Base.jl:380
 [9] include(::Module, ::String) at .\Base.jl:368
 [10] top-level scope at none:2
 [11] eval at .\boot.jl:331 [inlined]
 [12] eval(::Expr) at .\client.jl:467
 [13] top-level scope at .\none:3
in expression starting at D:\Users\sambi\.julia\packages\ZeroMQ_jll\EGrXV\src\ZeroMQ_jll.jl:5
caused by [exception 1]
IOError: unlink: permission denied (EACCES)
Stacktrace:
 [1] uv_error at .\libuv.jl:97 [inlined]
 [2] unlink(::String) at .\file.jl:918
 [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
 [4] rename(::String, ::String; force::Bool) at .\file.jl:928
 [5] compilecache(::Base.PkgId, ::String) at .\loading.jl:1296
 [6] _require(::Base.PkgId) at .\loading.jl:1030
 [7] require(::Base.PkgId) at .\loading.jl:928
 [8] require(::Module, ::Symbol) at .\loading.jl:923
 [9] include(::Function, ::Module, ::String) at .\Base.jl:380
 [10] include(::Module, ::String) at .\Base.jl:368
 [11] top-level scope at none:2
 [12] eval at .\boot.jl:331 [inlined]
 [13] eval(::Expr) at .\client.jl:467
 [14] top-level scope at .\none:3
β”Œ Warning: temp cleanup
β”‚   exception =
β”‚    IOError: unlink: permission denied (EACCES)
β”‚    Stacktrace:
β”‚     [1] uv_error at .\libuv.jl:97 [inlined]
β”‚     [2] unlink(::String) at .\file.jl:918
β”‚     [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
β”‚     [4] temp_cleanup_purge(::Bool) at .\file.jl:514
β”‚     [5] temp_cleanup_purge() at .\file.jl:507
β”‚     [6] _atexit() at .\initdefs.jl:316
β”‚     [7] exit at .\initdefs.jl:28 [inlined]
β”‚     [8] _start() at .\client.jl:509
β”” @ Base.Filesystem file.jl:518
ERROR: LoadError: Failed to precompile ZeroMQ_jll [8f1865be-045e-5c20-9c9f-bfbfb0764568] to D:\Users\sambi\.julia\compiled\v1.5\ZeroMQ_jll\Comll_7BmpT.ji.
...

I cannot install IJulia again as that would download Conda and can be very time consuming. Updating the packages didn’t help. When I launch the Julia 1.5.2 instance everything works file.

Operating System: Windows 10 64-bit

regards,

Sambit

1 Like

I have the same problem. For any package from the depot. Some problems with precompilation:

> julia> using DataFrames
> [ Info: Precompiling DataFrames [a93c6f00-e57d-5684-b7b6-d8193f3e46c0]
> ERROR: LoadError: IOError: unlink: permission denied (EACCES)
> Stacktrace:
>  [1] uv_error at .\libuv.jl:97 [inlined]
>  [2] unlink(::String) at .\file.jl:918
>  [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
>  [4] compilecache(::Base.PkgId, ::String) at .\loading.jl:1300
>  [5] _require(::Base.PkgId) at .\loading.jl:1030
>  [6] require(::Base.PkgId) at .\loading.jl:928
>  [7] require(::Module, ::Symbol) at .\loading.jl:923
>  [8] include(::Function, ::Module, ::String) at .\Base.jl:380
>  [9] include(::Module, ::String) at .\Base.jl:368
>  [10] top-level scope at none:2
>  [11] eval at .\boot.jl:331 [inlined]
>  [12] eval(::Expr) at .\client.jl:467
>  [13] top-level scope at .\none:3
> in expression starting at C:\Julia_depot\packages\SortingAlgorithms\ENt4c\src\SortingAlgorithms.jl:5
> caused by [exception 1]
> IOError: unlink: permission denied (EACCES)
> Stacktrace:
>  [1] uv_error at .\libuv.jl:97 [inlined]
>  [2] unlink(::String) at .\file.jl:918
>  [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
>  [4] rename(::String, ::String; force::Bool) at .\file.jl:928
>  [5] compilecache(::Base.PkgId, ::String) at .\loading.jl:1296
>  [6] _require(::Base.PkgId) at .\loading.jl:1030
>  [7] require(::Base.PkgId) at .\loading.jl:928
>  [8] require(::Module, ::Symbol) at .\loading.jl:923
>  [9] include(::Function, ::Module, ::String) at .\Base.jl:380
>  [10] include(::Module, ::String) at .\Base.jl:368
>  [11] top-level scope at none:2
>  [12] eval at .\boot.jl:331 [inlined]
>  [13] eval(::Expr) at .\client.jl:467
>  [14] top-level scope at .\none:3
> β”Œ Warning: temp cleanup
> β”‚   exception =
> β”‚    IOError: unlink: permission denied (EACCES)
> β”‚    Stacktrace:
> β”‚     [1] uv_error at .\libuv.jl:97 [inlined]
> β”‚     [2] unlink(::String) at .\file.jl:918
> β”‚     [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
> β”‚     [4] temp_cleanup_purge(::Bool) at .\file.jl:514
> β”‚     [5] temp_cleanup_purge() at .\file.jl:507
> β”‚     [6] _atexit() at .\initdefs.jl:316
> β”‚     [7] exit at .\initdefs.jl:28 [inlined]
> β”‚     [8] _start() at .\client.jl:509
> β”” @ Base.Filesystem file.jl:518
> ERROR: LoadError: Failed to precompile SortingAlgorithms [a2af1166-a08f-5f64-846c-94a0d3cef48c] to C:\Julia_depot\compi
> led\v1.5\SortingAlgorithms\6dCmw_aTbuW.ji.
> Stacktrace:
>  [1] error(::String) at .\error.jl:33
>  [2] compilecache(::Base.PkgId, ::String) at .\loading.jl:1305
>  [3] _require(::Base.PkgId) at .\loading.jl:1030
>  [4] require(::Base.PkgId) at .\loading.jl:928
>  [5] require(::Module, ::Symbol) at .\loading.jl:923
>  [6] include(::Function, ::Module, ::String) at .\Base.jl:380
>  [7] include(::Module, ::String) at .\Base.jl:368
>  [8] top-level scope at none:2
>  [9] eval at .\boot.jl:331 [inlined]
>  [10] eval(::Expr) at .\client.jl:467
>  [11] top-level scope at .\none:3
> in expression starting at C:\Julia_depot\packages\DataFrames\4ov0U\src\DataFrames.jl:4
> ERROR: Failed to precompile DataFrames [a93c6f00-e57d-5684-b7b6-d8193f3e46c0] to C:\Julia_depot\compiled\v1.5\DataFrame
> s\AR9oZ_aTbuW.ji.
> Stacktrace:
>  [1] error(::String) at .\error.jl:33
>  [2] compilecache(::Base.PkgId, ::String) at .\loading.jl:1305
>  [3] _require(::Base.PkgId) at .\loading.jl:1030
>  [4] require(::Base.PkgId) at .\loading.jl:928
>  [5] require(::Module, ::Symbol) at .\loading.jl:923
> 
> julia>

My systems: Win 10 64

I opened https://github.com/JuliaLang/julia/issues/38411

2 Likes

If you clear out .julia/compiled does it come back?

Same problem:

 julia> using DataFrames
[ Info: Precompiling DataFrames [a93c6f00-e57d-5684-b7b6-d8193f3e46c0]
ERROR: LoadError: IOError: unlink: permission denied (EACCES)
Stacktrace:
 [1] uv_error at .\libuv.jl:97 [inlined]
 [2] unlink(::String) at .\file.jl:918
 [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
 [4] compilecache(::Base.PkgId, ::String) at .\loading.jl:1300
 [5] _require(::Base.PkgId) at .\loading.jl:1030
 [6] require(::Base.PkgId) at .\loading.jl:928
 [7] require(::Module, ::Symbol) at .\loading.jl:923
 [8] include(::Function, ::Module, ::String) at .\Base.jl:380
 [9] include(::Module, ::String) at .\Base.jl:368
 [10] top-level scope at none:2
 [11] eval at .\boot.jl:331 [inlined]
 [12] eval(::Expr) at .\client.jl:467
 [13] top-level scope at .\none:3
in expression starting at C:\Julia_depot\packages\DataFrames\4ov0U\src\DataFrames.jl:4
caused by [exception 1]
IOError: unlink: permission denied (EACCES)
Stacktrace:
 [1] uv_error at .\libuv.jl:97 [inlined]
 [2] unlink(::String) at .\file.jl:918
 [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
 [4] rename(::String, ::String; force::Bool) at .\file.jl:928
 [5] compilecache(::Base.PkgId, ::String) at .\loading.jl:1296
 [6] _require(::Base.PkgId) at .\loading.jl:1030
 [7] require(::Base.PkgId) at .\loading.jl:928
 [8] require(::Module, ::Symbol) at .\loading.jl:923
 [9] include(::Function, ::Module, ::String) at .\Base.jl:380
 [10] include(::Module, ::String) at .\Base.jl:368
 [11] top-level scope at none:2
 [12] eval at .\boot.jl:331 [inlined]
 [13] eval(::Expr) at .\client.jl:467
 [14] top-level scope at .\none:3
β”Œ Warning: temp cleanup
β”‚   exception =
β”‚    IOError: unlink: permission denied (EACCES)
β”‚    Stacktrace:
β”‚     [1] uv_error at .\libuv.jl:97 [inlined]
β”‚     [2] unlink(::String) at .\file.jl:918
β”‚     [3] rm(::String; force::Bool, recursive::Bool) at .\file.jl:268
β”‚     [4] temp_cleanup_purge(::Bool) at .\file.jl:514
β”‚     [5] temp_cleanup_purge() at .\file.jl:507
β”‚     [6] _atexit() at .\initdefs.jl:316
β”‚     [7] exit at .\initdefs.jl:28 [inlined]
β”‚     [8] _start() at .\client.jl:509
β”” @ Base.Filesystem file.jl:518
ERROR: Failed to precompile DataFrames [a93c6f00-e57d-5684-b7b6-d8193f3e46c0] to C:\Julia_depot\compiled\v1.5\DataFrame
s\AR9oZ_aTbuW.ji.
Stacktrace:
 [1] error(::String) at .\error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at .\loading.jl:1305
 [3] _require(::Base.PkgId) at .\loading.jl:1030
 [4] require(::Base.PkgId) at .\loading.jl:928
 [5] require(::Module, ::Symbol) at .\loading.jl:923

julia>

a workaround is to start terminal with administrator privileges and then precompile all packages.

I do not have administrator rights.

I installed Julia 1.5.3 using chocolatey. this version is still under testing/failing tests.

using IJulia works OK for me… I dont mean to be contrary…
IJulia is v1.22.0 before any updates to the packages