[Beowulf] GLIBC_3.4.x/GLIBCXX_3.4.x not found on CentOS 7.x?

David Mathog mathog at caltech.edu
Wed Jun 20 11:32:08 PDT 2018


On 20-Jun-2018 10:21, Ryan Novosielski wrote:
>> On Jun 19, 2018, at 6:25 PM, David Mathog <mathog at caltech.edu> wrote:
>> What software would that be?
> 
> Where we’ve run into something similar before was the NCI gdc-client.

#on centos 6.9
cd /tmp
wget 
https://gdc.cancer.gov/system/files/authenticated%20user/0/gdc-client_v1.3.0_CentOS7_x64_Beta.zip
unzip gdc-client_v1.3.0_CentOS7_x64_Beta.zip
rm gdc-client_v1.3.0_CentOS7_x64_Beta.zip
ldd gdc-client
         linux-vdso.so.1 =>  (0x00007ffe1d33e000)
         libdl.so.2 => /lib64/libdl.so.2 (0x000000313ce00000)
         libz.so.1 => /lib64/libz.so.1 (0x000000313d200000)
         libc.so.6 => /lib64/libc.so.6 (0x000000313c200000)
         /lib64/ld-linux-x86-64.so.2 (0x000000313be00000)
gdc-client -h
./gdc-client: /lib64/libc.so.6: version `GLIBC_2.14' not found (required 
by /tmp/_MEIBBRbAt/libz.so.1)

WTF?  It unpacks its own libz, and who knows what else, in a 
subdirectory of /tmp, and that libz is linked to the wrong glibc 
version.  Even though the one the binary itself is linked to is the 
system libz, which is fine with the system libc.  The subdirectory name 
changes each time.  "strings" shows that gdc-client is full of symbols 
starting with "Py".  So it is a python based binary of some sort.  Leave 
it to the US government to come up with something this nutty.  
(Although, to be fair, the NCBI uses a different download tool called 
"Aspera client" which has none of these issues.)

> As it happens in this instance, this was a miscommunication. What the
> user was doing was installing an R package to a copy of R they’d
> installed with GCC 5.4 which was supplied by a module.

If a different compiler/environment was needed to build some program, 
and that program can itself build more programs, then in general it must 
be run in the same environment in which it was built.  For devtoolset 
that would be something like:

scl enable devtoolset-4 'make' # builds "prog"
scl enable devtoolset-4 'prog -args' # builds other things

Regards,

David Mathog
mathog at caltech.edu
Manager, Sequence Analysis Facility, Biology Division, Caltech


More information about the Beowulf mailing list