3

I am deploying a R script from within a conda environment on a cluster. The script loads a few packages that require glibc version >= 2.14. While my system has glibc version 2.14, the cluster has a glibc version 2.12 and I get the following error:

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

How can I tell conda to use a later version of glibc that is in my system library?

So far I have added a line in my cluster submission script to set the environment variable LD_LIBRARY_PATH to be the same as my system's library path. This failed and the glibc version remains 2.12 as seen using conda info.

I also tried adding an environmental variable LD_PRELOAD=/path/to/my/libc.so.6 before the execution of my script. However this gave me a segmentation fault error.

I have also tried a solution from this previous answer. However, I get an error saying that my make and gawk are too old. And I do not have root privileges to do anything about this.

Please help me with this.

GAURAV DIWAN
  • 158
  • 1
  • 1
  • 10

1 Answers1

1

However this gave me a segmentation fault error.

This answer explains why mismatch between ld-linux and libc.so.6 results in errors (segmentaion fault is one frequent class), and what to do about it.

Setting LD_PRELOAD can't fix this.

Employed Russian
  • 199,314
  • 34
  • 295
  • 362