biod/sambamba

Compilation: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ldmd2)

Closed this issue · 2 comments

I downloaded and successfully used the binaries from https://github.com/lomereiter/sambamba/releases. However, I'm failing to compile the source code under CentOS machine. The machine was missing ldmd2, so I downloaded ldc2-1.0.0-linux-x86_64 and corrected STATIC_LIB_PATH in the Makefile to point to its libs. And when I ran make sambamba-ldmd2-64, I'm getting this error:

ldc2-1.0.0-linux-x86_64/bin/ldmd2: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ldc2-1.0.0-linux-x86_64/bin/ldmd2)
ldc2-1.0.0-linux-x86_64/bin/ldmd2: /lib64/libc.so.6: version `GLIBC_2.15' not found (required by ldc2-1.0.0-linux-x86_64/bin/ldmd2)

I did the same on another (Debian) machine, and sambamba was compiled and executed successfully. But when I tried to copy the resulting binary from this Debian machine to the CentOS machine and run it, it failed on execution with the same "missing GLIBC_2.14" error. Also, all paths shown by ldd under CentOS machine are identical for the downloaded sambamba binary, and the binary compiled under Debian: libc.so.6 both point to /lib64/libc.so.6.

This looks odd that on the same machine, the binary from https://github.com/lomereiter/sambamba/releases runs successfully, but the compilation fails. Am I missing anything?

Hi, that's a known issue, LDC has to be compiled and slightly patched on CentOS: https://github.com/lomereiter/centos-ldc/blob/master/d-runtime-qsort.patch
In fact, lots of distributed binaries just don't give a damn about CentOS nowadays, as it's increasingly less common now that even researchers start to find local clusters too limiting and move to AWS and the like.

Thanks a lot! I was able to compile successfully.

Didn't know they tend to move away from local clusters. In AstraZeneca, we are doing some massive analysis projects using AWS, but the majority of every day production is still done using local cluster.