1

I've been trying to understand this situation:

I want to use python packages in Anaconda 3 that requires glibc 2.14. As Centos 6.x only uses glibc 2.12 I've compiled glibc 2.14 and installed to /opt/glibc-2.14.

I'm installing Anaconda3. The test I run looks like this:

With system default glibc it works:

/opt/anaconda3/bin/python -c "import pandas"

but with compiled glibc

export LD_LIBRARY_PATH=/opt/glibc-2.14/lib/:$LD_LIBRARY_PATH /opt/anaconda3/bin/python -c "import pandas"

it works on some machines... I installed over 20 VM and on some machines it works always and on some it never works and I receive: Segmentation fault (core dumped). On most of the machines it doesn't work.

Does anyone have any idea why this strange situation occures? Or maybe experienced this problems with

  • Possible duplicate of [Multiple glibc libraries on a single host](http://stackoverflow.com/questions/847179/multiple-glibc-libraries-on-a-single-host) – Employed Russian Apr 28 '17 at 03:07

2 Answers2

1

Does anyone have any idea why this strange situation occures

As this answer explains, what you are doing is not supposed to work: you have a mismatch between ld-linux and libc.so.6.

Community
  • 1
  • 1
Employed Russian
  • 199,314
  • 34
  • 295
  • 362
0

After some more investigating I've noticed that assigning more memory to lab machines (from 2/4 GB to 6 and more) make the segmentation fault error to go away. However problem still exist on production machine with 32 GB of RAM. Really strange.

Right now I found workaround which were the new python packages from anaconda that are compatibile with glibc 2.12 (become available few days ago) and packages' dependencies also does not require newer glibc.

@Employed Russian: Thanks, but probabaly not the problem with Multiple glibc libraries on a single host. In my case Python works with additional glibc. The problem is that the segmentation fault shows up on random machines while only using new glibc. Also I'm using other Python packages that requires glibc 2.14 to work, so I'm aware which version of glibc I'm using at the moment.

Also if there were some kind of mismatch in libraries then it shouldn't work at all (...probably).

Also as I mentioned at the beginning I've noticed that the problem is related to memory (still not sure what is happening with 32 GB of RAM machine).

One more thing: I'm not compiling python packages, so changing of compilator options od 'myapp' (python package) is not an option.

Appreciate your answers though.

Community
  • 1
  • 1