non-standard glibc location

Thomas Jollans tjol at tjol.eu
Thu Sep 7 11:17:22 EDT 2017


On 2017-09-06 16:14, Fetchinson . via Python-list wrote:
> Hi folks,
> 
> I'm trying to install a binary package (tensorflow) which contains
> some binary C extensions. Now my system glibc is 2.15 but the binaries
> in the C extensions were created (apparently) with glibc 2.17. So I
> thought no problemo I installed glibc 2.17 to a custom location, built
> python2.7 from source (hopefully using my custom glibc) and installed
> pip and everything else using this custom built python. But still when
> I try to import tensorflow I get:
> 
> ImportError: /lib64/libc.so.6: version `GLIBC_2.17' not found
> (required by /home/nogradi/fetch/custom/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so)
> 
> So apparently it's trying to use my system glibc, not the custom one.
> 
> How do I tell this extension to use the custom glibc? Is it even possible?

It's going to use the same libc as python, so first of all check which
libc your python interpreter is actually linked to. Maybe your custom
build didn't do quite what you wanted.

ldd `which python` # or something like that

Once you've convinced yourself that python has the correct libc, you
could try building tensorflow from source rather than installing the
binaries.

Maybe something in here helps:
https://github.com/tensorflow/tensorflow/issues/53


> 
> But maybe I have an even more basic issue: how do I link python not
> with the system glibc but with my custom glibc?
> 
> Cheers,
> Daniel
> 
> 
> 


-- 
Thomas Jollans



More information about the Python-list mailing list