Skip to content

[BUG] Plots fails to precompile on OSX (Ventura). #4478

@mogyak

Description

@mogyak

Details

I think it's a similar issue to #3800.
After updating the OS version(macOS Ventura 13.0(22A380)), it doesn't work.
I have confirmed that it works fine in Windows 10.

I'm getting an error with using Plots, so I'm posting an issue here.

I got the following error:

julia> using Plots
[ Info: Precompiling Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80]
GKS: dlopen(/workspace/destdir/lib/cairoplugin.so, 0x0001): tried: '/workspace/destdir/lib/cairoplugin.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/workspace/destdir/lib/cairoplugin.so' (no such file), '/workspace/destdir/lib/cairoplugin.so' (no such file)
ERROR: LoadError: SystemError: opening file "/var/folders/qp/h1pj2ff17pj9_c1vzzygktk00000gn/T/jl_z8T8jIfcZS.png": No such file or directory
Stacktrace:
  [1] systemerror(p::String, errno::Int32; extrainfo::Nothing)
    @ Base ./error.jl:176
  [2] #systemerror#80
    @ ./error.jl:175 [inlined]
  [3] systemerror
    @ ./error.jl:175 [inlined]
  [4] open(fname::String; lock::Bool, read::Nothing, write::Nothing, create::Nothing, truncate::Nothing, append::Nothing)
    @ Base ./iostream.jl:293
  [5] open
    @ ./iostream.jl:275 [inlined]
  [6] open(f::Base.var"#387#388"{String}, args::String; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Base ./io.jl:382
  [7] open
    @ ./io.jl:381 [inlined]
  [8] read
    @ ./io.jl:462 [inlined]
  [9] _show(io::IOStream, #unused#::MIME{Symbol("image/png")}, plt::Plots.Plot{Plots.GRBackend})
    @ Plots ~/.julia/packages/Plots/4UTBj/src/backends/gr.jl:2180
 [10] #invokelatest#2
    @ ./essentials.jl:729 [inlined]
 [11] invokelatest
    @ ./essentials.jl:726 [inlined]
 [12] show
    @ ~/.julia/packages/Plots/4UTBj/src/output.jl:237 [inlined]
 [13] #319
    @ ~/.julia/packages/Plots/4UTBj/src/output.jl:6 [inlined]
 [14] open(::Plots.var"#319#320"{Plots.Plot{Plots.GRBackend}}, ::String, ::Vararg{String}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Base ./io.jl:384
 [15] open
    @ ./io.jl:381 [inlined]
 [16] png(plt::Plots.Plot{Plots.GRBackend}, fn::String)
    @ Plots ~/.julia/packages/Plots/4UTBj/src/output.jl:6
 [17] savefig(plt::Plots.Plot{Plots.GRBackend}, fn::String)
    @ Plots ~/.julia/packages/Plots/4UTBj/src/output.jl:149
 [18] var"##1#313"()
    @ Plots ~/.julia/packages/Plots/4UTBj/src/precompile.jl:21
 [19] top-level scope
    @ ~/.julia/packages/Plots/4UTBj/src/precompile.jl:26
 [20] eval
    @ ./boot.jl:368 [inlined]
 [21] eval
    @ ~/.julia/packages/Plots/4UTBj/src/Plots.jl:1 [inlined]
 [22] _broadcast_getindex_evalf
    @ ./broadcast.jl:670 [inlined]
 [23] _broadcast_getindex
    @ ./broadcast.jl:643 [inlined]
 [24] getindex
    @ ./broadcast.jl:597 [inlined]
 [25] copy(bc::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1}, Tuple{Base.OneTo{Int64}}, typeof(Plots.eval), Tuple{Vector{Expr}}})
    @ Base.Broadcast ./broadcast.jl:899
 [26] materialize
    @ ./broadcast.jl:860 [inlined]
 [27] macro expansion
    @ ~/.julia/packages/Plots/4UTBj/src/precompile.jl:33 [inlined]
 [28] macro expansion
    @ ~/.julia/packages/SnoopPrecompile/UWvXF/src/SnoopPrecompile.jl:51 [inlined]
 [29] (::Plots.var"#634#635")()
    @ Plots ~/.julia/packages/Plots/4UTBj/src/precompile.jl:30
 [30] withenv(f::Plots.var"#634#635", keyvals::Pair{String, String})
    @ Base ./env.jl:172
 [31] macro expansion
    @ ~/.julia/packages/Plots/4UTBj/src/precompile.jl:29 [inlined]
 [32] macro expansion
    @ ~/.julia/packages/SnoopPrecompile/UWvXF/src/SnoopPrecompile.jl:107 [inlined]
 [33] top-level scope
    @ ~/.julia/packages/Plots/4UTBj/src/precompile.jl:5
 [34] include(mod::Module, _path::String)
    @ Base ./Base.jl:419
 [35] include(x::String)
    @ Plots ~/.julia/packages/Plots/4UTBj/src/Plots.jl:1
 [36] top-level scope
    @ ~/.julia/packages/Plots/4UTBj/src/Plots.jl:204
 [37] include
    @ ./Base.jl:419 [inlined]
 [38] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::Nothing)
    @ Base ./loading.jl:1554
 [39] top-level scope
    @ stdin:1
in expression starting at /Users/mogyak/.julia/packages/Plots/4UTBj/src/precompile.jl:4
in expression starting at /Users/mogyak/.julia/packages/Plots/4UTBj/src/Plots.jl:1
in expression starting at stdin:1
ERROR: Failed to precompile Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80] to /Users/mogyak/.julia/compiled/v1.8/Plots/jl_dzR22x.
Stacktrace:
 [1] error(s::String)
   @ Base ./error.jl:35
 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
   @ Base ./loading.jl:1707
 [3] compilecache
   @ ./loading.jl:1651 [inlined]
 [4] _require(pkg::Base.PkgId)
   @ Base ./loading.jl:1337
 [5] _require_prelocked(uuidkey::Base.PkgId)
   @ Base ./loading.jl:1200
 [6] macro expansion
   @ ./loading.jl:1180 [inlined]
 [7] macro expansion
   @ ./lock.jl:223 [inlined]
 [8] require(into::Module, mod::Symbol)
   @ Base ./loading.jl:1144

I tried like the referenced issue:

  1. Remove Julia brew uninstall julia
  2. Remove .julia rm -rf ~/.julia
  3. Install Julia brew install julia
  4. Package download ] add Plots
  5. Using Package using Plots
  6. Same problem.

Backends

This bug occurs on ( insert x below )

Backend yes no untested
gr (default) x
pyplot x
plotlyjs x
pgfplotsx x
unicodeplots x
inspectdr x
gaston x

Versions

Plots.jl version:
Backend version (]st -m <backend(s)>):

(@v1.8) pkg> st -m Plots GR PyPlot
Status `~/.julia/environments/v1.8/Manifest.toml`
  [28b8d3ca] GR v0.69.5
  [91a5bcdd] Plots v1.35.5
  [d330b81b] PyPlot v2.11.0

Output of versioninfo():

julia> versioninfo()
Julia Version 1.8.2
Commit 36034abf26 (2022-09-29 15:21 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin21.6.0)
  CPU: 12 × Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-13.0.1 (ORCJIT, skylake)
  Threads: 1 on 12 virtual cores

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions