I recently installed Julia 1.6 on a CentOS 7 cluster, but am unable to run it.
[affans@hpc ~]$ julia ERROR: Unable to load dependent library /home/affans/julia-1.6.1/bin/../lib/julia/libjulia-internal.so.1 Message:/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/affans/julia-1.6.1/bin/../lib/julia/libjulia-internal.so.1)
From the official 1.6 launch thread and some help on Slack, I was able to solve this issue.
Turns out . The issue is with the
glibc libraries on the cluster are version 2.17 but Julia apparently requires 2.22
libstdc++.so.6 library. I fixed this by running
# for julia 1.6, the glibc libraries are too old so make sure to use the julia shipepd ones export LD_LIBRARY_PATH=/home/affans/julia-1.6.1/lib/julia:$LD_LIBRARY_PATH
This made everything work and it was great for a few hours… until I tried
git clone and it failed with a
BADCERT_NOT_TRUSTED error. Digging a bit more, it wasn’t a
git issue, but a more generic issue with ssl certificates… for example:
[affans@hpc ~]$ curl https://julialang.org/ curl: (60) Cert verify failed: BADCERT_NOT_TRUSTED More details here: http://curl.haxx.se/docs/sslcerts.html
If I comment out the
LD_LIBRARY_PATH export (so it goes back to system libraries), all the ssl errors go away. So why is it that when I use the Julia’s shipped version of
glibc libraries, it clashes?
This stuff is way out of my domain so any help would be sincerely appreciated.