Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Limited GR support for Linux Aarch64 #2877

Closed
coezmaden opened this issue Jul 25, 2020 · 24 comments
Closed

[BUG] Limited GR support for Linux Aarch64 #2877

coezmaden opened this issue Jul 25, 2020 · 24 comments
Labels

Comments

@coezmaden
Copy link

Details

I'm trying to get Plots up and running on the Nvidia Jetson to plot some GPU vs CPU benchmarks. I tried asking around on the discourse, however the post doesn't seem to get any traction. The crux of the issue is what happens after add Plots:

(@v1.4) pkg> add Plots
  Resolving package versions...
  Installed ColorTypes ── v0.10.7
  Installed RecipesBase ─ v1.0.2
  Installed HTTP ──────── v0.8.17
  Installed Plots ─────── v1.5.6
   Updating `~/.julia/environments/v1.4/Project.toml`
  [91a5bcdd] + Plots v1.5.6
   Updating `~/.julia/environments/v1.4/Manifest.toml`
  [6e34b625] + Bzip2_jll v1.0.6+2
.
.
.
  [8bb1440f] + DelimitedFiles
   Building Plots  `~/.julia/packages/Plots/XbAWb/deps/build.log`

(@v1.4) pkg> build Plots
   Building GR ─── `~/.julia/packages/GR/8mv9N/deps/build.log`
┌ Error: Error building `GR`:
│ tar (child): downloads/gr-0.51.0-Linux-aarch64.tar.gz: Cannot open: No such file or directory
│ tar (child): Error is not recoverable: exiting now
│ tar: Child returned status 2
│ tar: Error is not recoverable: exiting now
│ [ Info: Downloading pre-compiled GR 0.51.0 Linux binary
│ ┌ Error: Download failed: curl: (22) The requested URL returned error: 404 Not Found
│ └ @ Base download.jl:43
│ ┌ Error: Download failed: curl: (22) The requested URL returned error: 404
│ └ @ Base download.jl:43
│ [ Info: Using insecure connection
│ ┌ Error: Download failed: curl: (22) The requested URL returned error: 404 Not Found
│ └ @ Base download.jl:43
│ [ Info: Cannot download GR run-time
│ ERROR: LoadError: failed process: Process(`tar xzf downloads/gr-0.51.0-Linux-aarch64.tar.gz`, ProcessExited(2)) [2]
│
│ Stacktrace:
│  [1] pipeline_error at ./process.jl:525 [inlined]
│  [2] run(::Cmd; wait::Bool) at ./process.jl:440
│  [3] run(::Cmd) at ./process.jl:438
│  [4] top-level scope at /home/coz/.julia/packages/GR/8mv9N/deps/build.jl:134
│  [5] include(::String) at ./client.jl:439
│  [6] top-level scope at none:5in expression starting at /home/coz/.julia/packages/GR/8mv9N/deps/build.jl:74
└ @ Pkg.Operations /buildworker/worker/package_linuxaarch64/build/usr/share/julia/stdlib/v1.4/Pkg/src/Operations.jl:892
   Building Plots  `~/.julia/packages/Plots/VA7Vx/deps/build.log`

julia> using Plots
[ Info: Precompiling Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80]
Cannot open cache file "/home/coz/.julia/compiled/v1.4/NaNMath/k9Y1O_Vt7ED.ji.N4T5qf" for writing.
ERROR: LoadError: Failed to precompile NaNMath [77ba4419-2d1f-58cd-9bb1-8ffee604a2e3] to /home/coz/.julia/compiled/v1.4/NaNMath/k9Y1O_Vt7ED.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1272
 [3] _require(::Base.PkgId) at ./loading.jl:1029
 [4] require(::Base.PkgId) at ./loading.jl:927
 [5] require(::Module, ::Symbol) at ./loading.jl:922
 [6] include(::Module, ::String) at ./Base.jl:377
 [7] top-level scope at none:2
 [8] eval at ./boot.jl:331 [inlined]
 [9] eval(::Expr) at ./client.jl:449
 [10] top-level scope at ./none:3
in expression starting at /home/coz/.julia/packages/Plots/XbAWb/src/Plots.jl:135
ERROR: Failed to precompile Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80] to /home/coz/.julia/compiled/v1.4/Plots/ld3vC_Vt7ED.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1272
 [3] _require(::Base.PkgId) at ./loading.jl:1029
 [4] require(::Base.PkgId) at ./loading.jl:927
 [5] require(::Module, ::Symbol) at ./loading.jl:922

Some failed attempts to fix this:

rm -r .julia/compiled/v1.4/NaNMath
sudo chmod 777 .julia/compiled/v1.4/NaNMath

Backends

This bug occurs on ( insert x below )

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

Versions

Plots.jl version: v1.5.6
Backend version (]st -m):

(@v1.4) pkg> st -m
Status `~/.julia/environments/v1.4/Manifest.toml`
  ...
  [28b8d3ca] GR v0.51.0
  ...
  [77ba4419] NaNMath v0.3.4
  ...

Output of versioninfo():

Julia Version 1.4.2
Commit 44fa15b150* (2020-05-23 18:35 UTC)
Platform Info:
  OS: Linux (aarch64-unknown-linux-gnu)
  CPU: unknown
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-8.0.1 (ORCJIT, generic)
Environment:
  JULIA_NUM_THREADS = 4
@coezmaden coezmaden added the bug label Jul 25, 2020
@BeastyBlacksmith
Copy link
Member

BeastyBlacksmith commented Jul 27, 2020

Do you have network connection? It tries to download the GR binaries but fails.
As a workaround you could collect the benchmark data on the nano and plot on a different machine.

@coezmaden
Copy link
Author

Do you have network connection? It tries to download the GR binaries but fails.

Yes I do, that's why the curl 404 error seems strange.

coz@nav-jetson:~$ ping -c4 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=118 time=32.6 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=118 time=14.6 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=118 time=20.2 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=118 time=24.0 ms

--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 14.634/22.887/32.601/6.538 ms

As a workaround you could collect the benchmark data on the nano and plot on a different machine.

That's probably what I am going to do atm. Though would have been nice to do both on the device.

@AbelHo
Copy link

AbelHo commented Aug 12, 2020

Have you managed to resolved this? I am having similar issue on Nvidia Jetson board. GR doesn't work, plotly works though.

@pschmied
Copy link

pschmied commented Dec 1, 2020

I found the same issue building on Aarch64 (on EC2). I'll test later on Raspberry Pi as well. It looks to me like maybe the GR install is trying to download an asset that doesn't exist for Aarch64.

@coezmaden
Copy link
Author

@AbelHo @pschmied Thanks for your feedback. The issue persists. It does seem like it's a problem related to GR trying to download something and failing as @pschmied pointed out. The thing in question is the asset behind this link. If you examine the assets found in the release page of GR under v0.49.0 there is no such file, so it's only logical that it fails. However, it seems GR supports Debian Aarch64 starting from v0.52.0. I'm going to rename the issue to "Limited GR support for Linux Aarch64" to be more general and hope there would be a GR compat bump for Aarch64 in Plots.jl. Would be happy if in the meantime someone suggests how to resolve this locally.

@coezmaden coezmaden changed the title [BUG] Error building and precompiling Plots on Linux ARM64 Nvidia Jetson [BUG] Limited GR support for Linux Aarch64 Dec 18, 2020
@BeastyBlacksmith
Copy link
Member

hope there would be a GR compat bump for Aarch64 in Plots.jl

What do you mean by that? Current Plots version has compat entries for GR versions till 0.53.

@coezmaden
Copy link
Author

coezmaden commented Dec 18, 2020

Current Plots version has compat entries for GR versions till 0.53.

You are right @BeastyBlacksmith. However this happens when I try to ] add Plots on Aarch64 machine using Julia 1.5:

Building GR  `~/.julia/packages/GR/cRdXQ/deps/build.log`
┌ Error: Error building `GR`:
│ --2020-12-18 13:36:54--  https://github.com/sciapp/gr/releases/download/v0.49.0/gr-0.49.0-Linux-aarch64.tar.gz
│ Resolving github.com (github.com)... 140.82.121.3
│ Connecting to github.com (github.com)|140.82.121.3|:443... connected.
│ HTTP request sent, awaiting response... 404 Not Found
│ 2020-12-18 13:36:54 ERROR 404: Not Found
.
.
.

It still tries to download the GR v0.49.0 files judging by the URL.

EDIT: Plots version v1.9.1

@BeastyBlacksmith
Copy link
Member

Can you try to explicitly add GR v0.53 befor adding Plots?

@coezmaden
Copy link
Author

Good idea, but it still fails. I called ] add GR@v0.53.0 and tries to look up a file under the name "gr-0.53.0-Linux-aarch64.tar.gz" which doesn't exist. What does exist is "gr-0.53.0-Debian-aarch64.tar.gz". Somewhat redacted stacktrace below:

   Building GR  `~/.julia/packages/GR/RlE5Y/deps/build.log`
┌ Error: Error building `GR`:
│ --2020-12-18 15:31:36--  https://github.com/sciapp/gr/releases/download/v0.53.0/gr-0.53.0-Linux-aarch64.tar.gz
│ Resolving github.com (github.com)... 140.82.121.3
│ Connecting to github.com (github.com)|140.82.121.3|:443... connected.
│ HTTP request sent, awaiting response... 404 Not Found
│ 2020-12-18 15:31:37 ERROR 404: Not Found.
.
.
.

@BeastyBlacksmith
Copy link
Member

Thats likely a bug in the build script of GR.jl then. @jheinen

@coezmaden
Copy link
Author

The issue seems to be mentioned not too long ago in here. Subsequently fixed by this commit. So I added the master branch of GR.jl via ] add https://github.com/jheinen/GR.jl . Then I built GR ] build GR and tested using Plots. Works like a charm now. Thanks @BeastyBlacksmith @jheinen . I will close this issue as the said commit would probably make it into next release of GR.jl

@rustyconover
Copy link

Hi,

It seems this fixes the problem on ARM, is there a reason why this hasn't been released in a month?

@pgagarinov
Copy link

pgagarinov commented Mar 15, 2021

@ozmaden
Still having the similar problem on Manjaro Linux
image

I temporary worked around this by installing GR 0.55 manually from AUR via yay -S gr-framework

@jheinen
Copy link
Member

jheinen commented Mar 15, 2021

Are you really on GR#master?

@pgagarinov
Copy link

pgagarinov commented Mar 15, 2021

Are you really on GR#master?
Julia 1.5.3

[91a5bcdd] + Plots v1.10.6
[28b8d3ca] + GR v0.55.0
[d2c73de3] + GR_jll v0.53.0+0

Attaching the log file just in case.
build.log

The full Julia REPL output

(testgr) pkg> add Plots
   Updating registry at `~/.julia/registries/General`
######################################################################## 100.0%
  Resolving package versions...
Updating `~/_Git/_Julia/try-weave/testgr/Project.toml`
  [91a5bcdd] + Plots v1.10.6
Updating `~/_Git/_Julia/try-weave/testgr/Manifest.toml`
  [79e6a3ab] + Adapt v3.2.0
  [56f22d72] + Artifacts v1.3.0
  [6e34b625] + Bzip2_jll v1.0.6+5
  [83423d85] + Cairo_jll v1.16.0+6
  [35d6a980] + ColorSchemes v3.10.2
  [3da002f7] + ColorTypes v0.10.12
  [5ae59095] + Colors v0.12.6
  [34da2185] + Compat v3.25.0
  [e66e0078] + CompilerSupportLibraries_jll v0.3.4+0
  [d38c429a] + Contour v0.5.7
  [9a962f9c] + DataAPI v1.6.0
  [864edb3b] + DataStructures v0.18.9
  [e2d170a0] + DataValueInterfaces v1.0.0
  [5ae413db] + EarCut_jll v2.1.5+1
  [2e619515] + Expat_jll v2.2.7+6
  [c87230d0] + FFMPEG v0.4.0
  [b22a6f82] + FFMPEG_jll v4.3.1+4
  [53c48c17] + FixedPointNumbers v0.8.4
  [a3f928ae] + Fontconfig_jll v2.13.1+14
  [59287772] + Formatting v0.4.2
  [d7e528f0] + FreeType2_jll v2.10.1+5
  [559328eb] + FriBidi_jll v1.0.5+6
  [0656b61e] + GLFW_jll v3.3.2+1
  [28b8d3ca] + GR v0.55.0
  [d2c73de3] + GR_jll v0.53.0+0
  [5c1252a2] + GeometryBasics v0.3.11
  [78b55507] + Gettext_jll v0.20.1+7
  [7746bdde] + Glib_jll v2.59.0+4
  [42e2da0e] + Grisu v1.0.0
  [cd3eb016] + HTTP v0.9.5
  [83e8ac13] + IniFile v0.5.0
  [c8e1da08] + IterTools v1.3.0
  [82899510] + IteratorInterfaceExtensions v1.0.0
  [692b3bcd] + JLLWrappers v1.2.0
  [682c06a0] + JSON v0.21.1
  [aacddb02] + JpegTurbo_jll v2.0.1+3
  [c1c5ebd0] + LAME_jll v3.100.0+3
  [dd4b983a] + LZO_jll v2.10.0+3
  [b964fa9f] + LaTeXStrings v1.2.1
  [23fbe1c1] + Latexify v0.14.11
  [dd192d2f] + LibVPX_jll v1.9.0+1
  [e9f186c6] + Libffi_jll v3.2.1+4
  [d4300ac3] + Libgcrypt_jll v1.8.5+4
  [7e76a0d4] + Libglvnd_jll v1.3.0+3
  [7add5ba3] + Libgpg_error_jll v1.36.0+3
  [94ce4f54] + Libiconv_jll v1.16.0+7
  [4b2f31a3] + Libmount_jll v2.34.0+3
  [89763e89] + Libtiff_jll v4.1.0+2
  [38a345b3] + Libuuid_jll v2.34.0+7
  [1914dd2f] + MacroTools v0.5.6
  [739be429] + MbedTLS v1.0.3
  [c8ffd9c3] + MbedTLS_jll v2.16.8+1
  [442fdcdd] + Measures v0.3.1
  [e1d29d7a] + Missings v0.4.5
  [77ba4419] + NaNMath v0.3.5
  [ca575930] + NetworkOptions v1.2.0
  [e7412a2a] + Ogg_jll v1.3.4+2
  [458c3c95] + OpenSSL_jll v1.1.1+6
  [91d4177d] + Opus_jll v1.3.1+3
  [bac558e1] + OrderedCollections v1.4.0
  [2f80f16e] + PCRE_jll v8.42.0+4
  [69de0a69] + Parsers v1.0.16
  [30392449] + Pixman_jll v0.40.0+0
  [ccf2f8ad] + PlotThemes v2.0.1
  [995b91a9] + PlotUtils v1.0.10
  [91a5bcdd] + Plots v1.10.6
  [ede63266] + Qt_jll v5.15.2+1
  [3cdcf5f2] + RecipesBase v1.1.1
  [01d81517] + RecipesPipeline v0.3.1
  [189a3867] + Reexport v1.0.0
  [ae029012] + Requires v1.1.3
  [6c6a2e73] + Scratch v1.0.3
  [992d4aef] + Showoff v0.3.2
  [a2af1166] + SortingAlgorithms v0.3.1
  [90137ffa] + StaticArrays v1.0.1
  [2913bbd2] + StatsBase v0.33.3
  [09ab397b] + StructArrays v0.5.0
  [3783bdb8] + TableTraits v1.0.0
  [bd369af6] + Tables v1.4.0
  [5c2747f8] + URIs v1.2.0
  [a2964d1f] + Wayland_jll v1.17.0+4
  [2381bf8a] + Wayland_protocols_jll v1.18.0+4
  [02c8fc9c] + XML2_jll v2.9.10+3
  [aed1982a] + XSLT_jll v1.1.33+4
  [4f6342f7] + Xorg_libX11_jll v1.6.9+4
  [0c0b7dd1] + Xorg_libXau_jll v1.0.9+4
  [935fb764] + Xorg_libXcursor_jll v1.2.0+4
  [a3789734] + Xorg_libXdmcp_jll v1.1.3+4
  [1082639a] + Xorg_libXext_jll v1.3.4+4
  [d091e8ba] + Xorg_libXfixes_jll v5.0.3+4
  [a51aa0fd] + Xorg_libXi_jll v1.7.10+4
  [d1454406] + Xorg_libXinerama_jll v1.1.4+4
  [ec84b674] + Xorg_libXrandr_jll v1.5.2+4
  [ea2f1a96] + Xorg_libXrender_jll v0.9.10+4
  [14d82f49] + Xorg_libpthread_stubs_jll v0.1.0+3
  [c7cfdc94] + Xorg_libxcb_jll v1.13.0+3
  [cc61e674] + Xorg_libxkbfile_jll v1.1.0+4
  [12413925] + Xorg_xcb_util_image_jll v0.4.0+1
  [2def613f] + Xorg_xcb_util_jll v0.4.0+1
  [975044d2] + Xorg_xcb_util_keysyms_jll v0.4.0+1
  [0d47668e] + Xorg_xcb_util_renderutil_jll v0.3.9+1
  [c22f9ab0] + Xorg_xcb_util_wm_jll v0.4.1+1
  [35661453] + Xorg_xkbcomp_jll v1.4.2+4
  [33bec58e] + Xorg_xkeyboard_config_jll v2.27.0+4
  [c5fb5394] + Xorg_xtrans_jll v1.4.0+3
  [83775a58] + Zlib_jll v1.2.11+18
  [3161d3a3] + Zstd_jll v1.4.8+0
  [0ac62f75] + libass_jll v0.14.0+4
  [f638f0a6] + libfdk_aac_jll v0.1.6+4
  [b53b4c65] + libpng_jll v1.6.37+6
  [f27f6e37] + libvorbis_jll v1.3.6+6
  [1270edf5] + x264_jll v2020.7.14+2
  [dfaa095f] + x265_jll v3.0.0+3
  [d8fb68d0] + xkbcommon_jll v0.9.1+5
  [2a0f44e3] + Base64
  [ade2ca70] + Dates
  [8bb1440f] + DelimitedFiles
  [8ba89e20] + Distributed
  [b77e0a4c] + InteractiveUtils
  [76f85450] + LibGit2
  [8f399da3] + Libdl
  [37e2e46d] + LinearAlgebra
  [56ddb016] + Logging
  [d6f4376e] + Markdown
  [a63ad114] + Mmap
  [44cfe95a] + Pkg
  [de0858da] + Printf
  [3fa0cd96] + REPL
  [9a3f8284] + Random
  [ea8e919c] + SHA
  [9e88b42a] + Serialization
  [1a1011a3] + SharedArrays
  [6462fe0b] + Sockets
  [2f01184e] + SparseArrays
  [10745b16] + Statistics
  [8dfed614] + Test
  [cf7118a7] + UUIDs
  [4ec0a83e] + Unicode

(testgr) pkg> build Plots
   Building GR → `~/.julia/packages/GR/9Vi4m/deps/build.log`
┌ Error: Error building `GR`: 
│ tar (child): downloads/gr-0.55.0-ArchLinux-x86_64.tar.gz: Cannot open: No such file or directory
│ tar (child): Error is not recoverable: exiting now
│ tar: Child returned status 2
│ tar: Error is not recoverable: exiting now
│ [ Info: Downloading pre-compiled GR 0.55.0 ArchLinux binary
│ [ Info: Using insecure connection
│ [ Info: Cannot download GR run-time
│ ERROR: LoadError: failed process: Process(`tar xzf downloads/gr-0.55.0-ArchLinux-x86_64.tar.gz`, ProcessExited(2)) [2]
│ 
│ Stacktrace:
│  [1] run(::Cmd) at ./process.jl:438
│  [2] top-level scope at /home/peter/.julia/packages/GR/9Vi4m/deps/build.jl:164
│  [3] include(::String) at ./client.jl:457
│  [4] top-level scope at none:5
│ in expression starting at /home/peter/.julia/packages/GR/9Vi4m/deps/build.jl:98
└ @ Pkg.Operations /build/julia/src/julia-1.5.3/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:949

@jheinen
Copy link
Member

jheinen commented Mar 15, 2021

Could you pls try ] add GR#master; ENV["GRDIR"]=""; ] build GR

@pgagarinov
Copy link

pgagarinov commented Mar 15, 2021

Could you pls try ] add GR#master; ENV["GRDIR"]=""; ] build GR

Same problem:

(try-weave) pkg> activate testgr2
 Activating new environment at `~/_Git/_Julia/try-weave/testgr2/Project.toml`

(testgr2) pkg> add GR#master;
   Updating git-repo `https://github.com/jheinen/GR.jl.git`
  Resolving package versions...
Updating `~/_Git/_Julia/try-weave/testgr2/Project.toml`
  [28b8d3ca] + GR v0.55.0 `https://github.com/jheinen/GR.jl.git#master`
Updating `~/_Git/_Julia/try-weave/testgr2/Manifest.toml`
  [56f22d72] + Artifacts v1.3.0
  [6e34b625] + Bzip2_jll v1.0.6+5
  [83423d85] + Cairo_jll v1.16.0+6
  [e66e0078] + CompilerSupportLibraries_jll v0.3.4+0
  [2e619515] + Expat_jll v2.2.7+6
  [b22a6f82] + FFMPEG_jll v4.3.1+4
  [a3f928ae] + Fontconfig_jll v2.13.1+14
  [d7e528f0] + FreeType2_jll v2.10.1+5
  [559328eb] + FriBidi_jll v1.0.5+6
  [0656b61e] + GLFW_jll v3.3.2+1
  [28b8d3ca] + GR v0.55.0 `https://github.com/jheinen/GR.jl.git#master`
  [d2c73de3] + GR_jll v0.53.0+0
  [78b55507] + Gettext_jll v0.20.1+7
  [7746bdde] + Glib_jll v2.59.0+4
  [cd3eb016] + HTTP v0.9.5
  [83e8ac13] + IniFile v0.5.0
  [692b3bcd] + JLLWrappers v1.2.0
  [682c06a0] + JSON v0.21.1
  [aacddb02] + JpegTurbo_jll v2.0.1+3
  [c1c5ebd0] + LAME_jll v3.100.0+3
  [dd4b983a] + LZO_jll v2.10.0+3
  [dd192d2f] + LibVPX_jll v1.9.0+1
  [e9f186c6] + Libffi_jll v3.2.1+4
  [d4300ac3] + Libgcrypt_jll v1.8.5+4
  [7e76a0d4] + Libglvnd_jll v1.3.0+3
  [7add5ba3] + Libgpg_error_jll v1.36.0+3
  [94ce4f54] + Libiconv_jll v1.16.0+7
  [4b2f31a3] + Libmount_jll v2.34.0+3
  [89763e89] + Libtiff_jll v4.1.0+2
  [38a345b3] + Libuuid_jll v2.34.0+7
  [739be429] + MbedTLS v1.0.3
  [c8ffd9c3] + MbedTLS_jll v2.16.8+1
  [ca575930] + NetworkOptions v1.2.0
  [e7412a2a] + Ogg_jll v1.3.4+2
  [458c3c95] + OpenSSL_jll v1.1.1+6
  [91d4177d] + Opus_jll v1.3.1+3
  [2f80f16e] + PCRE_jll v8.42.0+4
  [69de0a69] + Parsers v1.0.16
  [30392449] + Pixman_jll v0.40.0+0
  [ede63266] + Qt_jll v5.15.2+1
  [5c2747f8] + URIs v1.2.0
  [a2964d1f] + Wayland_jll v1.17.0+4
  [2381bf8a] + Wayland_protocols_jll v1.18.0+4
  [02c8fc9c] + XML2_jll v2.9.10+3
  [aed1982a] + XSLT_jll v1.1.33+4
  [4f6342f7] + Xorg_libX11_jll v1.6.9+4
  [0c0b7dd1] + Xorg_libXau_jll v1.0.9+4
  [935fb764] + Xorg_libXcursor_jll v1.2.0+4
  [a3789734] + Xorg_libXdmcp_jll v1.1.3+4
  [1082639a] + Xorg_libXext_jll v1.3.4+4
  [d091e8ba] + Xorg_libXfixes_jll v5.0.3+4
  [a51aa0fd] + Xorg_libXi_jll v1.7.10+4
  [d1454406] + Xorg_libXinerama_jll v1.1.4+4
  [ec84b674] + Xorg_libXrandr_jll v1.5.2+4
  [ea2f1a96] + Xorg_libXrender_jll v0.9.10+4
  [14d82f49] + Xorg_libpthread_stubs_jll v0.1.0+3
  [c7cfdc94] + Xorg_libxcb_jll v1.13.0+3
  [cc61e674] + Xorg_libxkbfile_jll v1.1.0+4
  [12413925] + Xorg_xcb_util_image_jll v0.4.0+1
  [2def613f] + Xorg_xcb_util_jll v0.4.0+1
  [975044d2] + Xorg_xcb_util_keysyms_jll v0.4.0+1
  [0d47668e] + Xorg_xcb_util_renderutil_jll v0.3.9+1
  [c22f9ab0] + Xorg_xcb_util_wm_jll v0.4.1+1
  [35661453] + Xorg_xkbcomp_jll v1.4.2+4
  [33bec58e] + Xorg_xkeyboard_config_jll v2.27.0+4
  [c5fb5394] + Xorg_xtrans_jll v1.4.0+3
  [83775a58] + Zlib_jll v1.2.11+18
  [3161d3a3] + Zstd_jll v1.4.8+0
  [0ac62f75] + libass_jll v0.14.0+4
  [f638f0a6] + libfdk_aac_jll v0.1.6+4
  [b53b4c65] + libpng_jll v1.6.37+6
  [f27f6e37] + libvorbis_jll v1.3.6+6
  [1270edf5] + x264_jll v2020.7.14+2
  [dfaa095f] + x265_jll v3.0.0+3
  [d8fb68d0] + xkbcommon_jll v0.9.1+5
  [2a0f44e3] + Base64
  [ade2ca70] + Dates
  [8bb1440f] + DelimitedFiles
  [8ba89e20] + Distributed
  [b77e0a4c] + InteractiveUtils
  [76f85450] + LibGit2
  [8f399da3] + Libdl
  [37e2e46d] + LinearAlgebra
  [56ddb016] + Logging
  [d6f4376e] + Markdown
  [a63ad114] + Mmap
  [44cfe95a] + Pkg
  [de0858da] + Printf
  [3fa0cd96] + REPL
  [9a3f8284] + Random
  [ea8e919c] + SHA
  [9e88b42a] + Serialization
  [6462fe0b] + Sockets
  [8dfed614] + Test
  [cf7118a7] + UUIDs
  [4ec0a83e] + Unicode

julia> ENV["GRDIR"] = "";

(testgr2) pkg> build GR;
   Building GR → `~/.julia/packages/GR/1Gl60/deps/build.log`
┌ Error: Error building `GR`: 
│ tar (child): downloads/gr-latest-ArchLinux-x86_64.tar.gz: Cannot open: No such file or directory
│ tar (child): Error is not recoverable: exiting now
│ tar: Child returned status 2
│ tar: Error is not recoverable: exiting now
│ [ Info: Downloading pre-compiled GR latest ArchLinux binary
│ [ Info: Using insecure connection
│ [ Info: Cannot download GR run-time
│ ERROR: LoadError: failed process: Process(`tar xzf downloads/gr-latest-ArchLinux-x86_64.tar.gz`, ProcessExited(2)) [2]
│ 
│ Stacktrace:
│  [1] run(::Cmd) at ./process.jl:438
│  [2] top-level scope at /home/peter/.julia/packages/GR/1Gl60/deps/build.jl:164
│  [3] include(::String) at ./client.jl:457
│  [4] top-level scope at none:5
│ in expression starting at /home/peter/.julia/packages/GR/1Gl60/deps/build.jl:98
└ @ Pkg.Operations /build/julia/src/julia-1.5.3/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:949

@jheinen
Copy link
Member

jheinen commented Mar 15, 2021

The tar file you are looking for is available both on GitHub and gr-framework.org - same for the stable releases. I have absolutely no idea, why you can't download them.

@pgagarinov
Copy link

The tar file you are looking for is available both on GitHub and gr-framework.org - same for the stable releases. I have absolutely no idea, why you can't download them.

As far as I can see the installation procedure complains about not being able to find the file on disk AFTER it is successfully downloaded. I can only assume that the file is downloaded to one placed and then the installer tries to find it in a different place.

@schlichtanders
Copy link

schlichtanders commented Jun 19, 2023

On a recent update of Plots.jl my arm64 deployment also broke with this error

begin
	import Pkg
	Pkg.build("Plots")
end
Error building `GR`:

tar (child): downloads/gr-0.49.0-Linux-aarch64.tar.gz: Cannot open: No such file or directory

Update: I deleted the GR artifact, removed the Plots dependency (working in Pluto) and readded it again. Hint came from this discourse comment - thank you so much @t-bltg. This seemed to have helped.

So it seems the GR artifact can go corrupt, which of course should never happen for such a stable package as Plots.
Can someone recommend on how to proceed here to make it stable in the future?

@BeastyBlacksmith
Copy link
Member

Ideally the checksum for the artifact is checked after download and if it doesn't match the file is deleted and either a retry happens or you'd get a helpful error, but that would need to be handled by Pkg (don't know what the current behaviour is).

@t-bltg
Copy link
Member

t-bltg commented Jun 19, 2023

So it seems the GR artifact can go corrupt, which of course should never happen for such a stable package as Plots.

Yeah, I've seen lots of GR artifacts corruption (e.g. jheinen/GR.jl#480).
Hard to tackle though, because of the way GR works.

@jheinen
Copy link
Member

jheinen commented Jun 19, 2023

I have no idea/explanation why the GR artifact could go corrupt. We started supporting aarch64 with GR version 0.52 in September 2020. So downloading gr-0.49.0-Linux-aarch64.tar.gz cannot work.

In addition, an X virtual framebuffer is no longer mandatory as a display server for GR3.

@schlichtanders
Copy link

thank you for your extra help. Unfortunately I cannot reproduce the issue on my side and am very astonished, that somehow such an old GR version (0.49 seems to be 3 years old) came onto my julia 1.9 docker with fresh installed environments.

Summary: Sorry for hijacking this old issue. It was fitting my issue search, even with this precise version 0.49. I guess nothing useful is to be added, but that some weird GR installation issues still appear for Aarch64 today. Luckily very rarely, but still.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

9 participants