[issue21042] ctypes.util.find_library() should return full pathname instead of filename in linux
Martin Panter
report at bugs.python.org
Tue Mar 8 22:20:59 EST 2016
Martin Panter added the comment:
It looks like the ldconfig parsing isn’t working for some ABIs. See the following buildbot failures:
* Cortex A15 armv7l: http://buildbot.python.org/all/builders/ARMv7%20Ubuntu%203.x/builds/3721/steps/test/logs/stdio
* ppc64le POWER8: http://buildbot.python.org/all/builders/PPC64LE%20Fedora%203.x/builds/769/steps/test/logs/stdio
I presume there are other flags in the ABI string, perhaps like (libc6,hard-float) on ARM. The code that produces these strings seems to be here: <https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=blob;f=elf/cache.c;h=fbee172#l72>.
Looking closer at the find_library() implementation, I also realize it is not correct to say an absolute path is always returned. If the ldconfig check fails, it falls back to _get_soname(). I think we have the following options:
* Adjust the documentation to say an absolute path is only returned if the ldconfig call works
* Figure out how to get the right ldconfig flags for ARM and PPC
* Use the old parsing code on ARM and PPC platforms, and only return a full path on x86 or other platforms
* Revert the whole change
----------
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue21042>
_______________________________________
More information about the Python-bugs-list
mailing list