Putting together an app that displays a plot of results at the end. Unfortunately, the plot never displays at the end. Instead, there is an error message about GR_jll, although I see it listed when it is compiling (see below).
Does anyone know of a workaround or know what’s missing here?
Minimum example:
] generate PlotApp
cd("PlotApp")
] activate .
] add Plots
PlotApp.jl
has inside it:
module PlotApp
using Plots
function julia_main()::Cint
a = [0.0, 1.0, 2.0, 3.0]
p = plot(a, label="x", xlabel="xlabel", ylabel="ylabel")
gui(p) # display() and @show have same results
return 0
end
end # module
After installing PackageCompiler:
# Here I thought lazy artifacts might be necessary but still produces same error
create_app("./", "app"; include_lazy_artifacts=true, force=true)
PackageCompiler: bundled artifacts:
├── Bzip2_jll - 2.232 MiB
├── Cairo_jll - 13.579 MiB
├── EarCut_jll - 678.178 KiB
├── Expat_jll - 1.132 MiB
├── FFMPEG_jll - 27.893 MiB
├── Fontconfig_jll - 3.017 MiB
├── FreeType2_jll - 4.737 MiB
├── FriBidi_jll - 570.671 KiB
├── GLFW_jll - 711.095 KiB
├── GR_jll - 30.940 MiB
├── Gettext_jll - 19.930 MiB
├── Glib_jll - 20.546 MiB
├── Graphite2_jll - 696.780 KiB
├── HarfBuzz_jll - 6.257 MiB
├── JpegTurbo_jll - 4.951 MiB
├── LAME_jll - 1.398 MiB
├── LERC_jll - 758.367 KiB
├── LZO_jll - 1.084 MiB
├── Libffi_jll - 205.667 KiB
├── Libgcrypt_jll - 6.433 MiB
├── Libgpg_error_jll - 2.227 MiB
├── Libiconv_jll - 2.245 MiB
├── Libtiff_jll - 9.779 MiB
├── Ogg_jll - 693.400 KiB
├── OpenSSL_jll - 14.619 MiB
├── OpenSpecFun_jll - 798.680 KiB
├── Opus_jll - 3.208 MiB
├── PCRE_jll - 4.222 MiB
├── Pixman_jll - 5.945 MiB
├── Qt5Base_jll - 83.605 MiB
├── Wayland_protocols_jll - 465.663 KiB
├── XML2_jll - 7.444 MiB
├── XSLT_jll - 2.226 MiB
├── Zstd_jll - 3.936 MiB
├── libass_jll - 1.424 MiB
├── libfdk_aac_jll - 8.899 MiB
├── libpng_jll - 1.714 MiB
├── libvorbis_jll - 1.385 MiB
├── x264_jll - 5.880 MiB
└── x265_jll - 12.785 MiB
Total artifact file size: 321.120 MiB
✔ [03m:37s] PackageCompiler: compiling base system image (incremental=false)
Precompiling project...
134 dependencies successfully precompiled in 952 seconds
✔ [05m:46s] PackageCompiler: compiling incremental system image
Running the app results in the below:
$ ./app/bin/PlotApp.exe
┌ Error: Error importing GR_jll:
│ err =
│ ArgumentError: Package GR does not have GR_jll in its dependencies:
│ - If you have GR checked out for development and have
│ added GR_jll as a dependency but haven't updated your primary
│ environment's manifest file, try `Pkg.resolve()`.
│ - Otherwise you may need to report an issue with GR
└ @ GR C:\Users\username\.julia\packages\GR\DratL\src\funcptrs.jl:42
Your GR installation is incomplete. Rerunning build step for GR package.
┌ Info: Switching provider to GR due to error in depsfile
└ depsfile = "C:\\Users\\username\\.julia\\packages\\GR\\DratL\\deps\\deps.jl"
┌ Warning: GR attempted to rebuild but failed due to LoadError("C:\\Users\\username\\.julia\\packages\\GR\\DratL\\deps\\build.jl", 1, ArgumentError("Package GR does not have Pkg in its dependencies:\n- If you have GR checked out for development and have\n added Pkg as a dependency but haven't updated your primary\n environment's manifest file, try `Pkg.resolve()`.\n- Otherwise you may need to report an issue with GR")). Setting ENV["JULIA_GR_REBUILD"] = false.
└ @ GR C:\Users\username\.julia\packages\GR\DratL\src\GR.jl:378
GR was not built correctly and could not be automatically rebuilt.
get(ENV, "JULIA_GR_REBUILD", "true") == false
C:\Users\username\.julia\packages\GR\DratL\src\..\deps\gr is not a directory.
GR_jll could not be loaded.
Run the following commands:
ENV["GRDIR"] = ""
using Pkg; Pkg.build("GR")