Local hail runtime error: `GLIBCXX_3.4.18' not found

I’ve installed hail (with no admin rights) onto a shared drive accessible to an HPC (LSF) cluster. On the head node the install & basic testing in the install went fine, but every time I try to access a local vcf I get this error for an unsatisfied link:

import hail as hl
mt = hl.import_vcf(’/lustre/scratch116/casm/team113/vvi/scratch/temp_joint_call_holder/chr22.22.vcf.gz’, force_bgz=True)
ERROR: dlopen("/tmp/libhail7612158981357949992.so"): /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version GLIBCXX_3.4.18' not found (required by /tmp/libhail7612158981357949992.so) FATAL: caught exception java.lang.UnsatisfiedLinkError: /tmp/libhail7612158981357949992.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versionGLIBCXX_3.4.18’ not found (required by /tmp/libhail7612158981357949992.so)

Hail version: 0.2.9-8588a25687af
Error summary: SparkException: Job 1 cancelled because SparkContext was shut down

Can someone recommend a way of fixing this that doesn’t need admin rights?

Ok, I’ve worked out what to do: I had to alter my LD_LIBRARY_PATH to include a modern libstd from a more recent version of gcc (the old version was pointed at libstd from gcc-4.x)

export LD_LIBRARY_PATH=/software/hgi/pkglocal/gcc-7.2.0/lib64/:$LD_LIBRARY_PATH

  • that got around the problem.

Thanks for posting a solution!