ctypes broken on armhf
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Python |
New
|
Unknown
|
|||
python2.6 (Ubuntu) |
Won't Fix
|
Undecided
|
Unassigned | ||
python2.7 (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
python3.2 (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Hi
Python's ctypes allows dynamically loading libraries. On linux, it parses ldconfig -p output for a given library name, skipping over incompatible ABIs. ABI is derived from uname output, which is incorrect. Currently, the code can't cope with "hard-float" in the ldconfig -p output on armhf.
I will attach a debdiff which allows ctypes to work on either armel or armhf, but wont work on a biarch or multiarch armel + armhf system.
The code should be redesigned to check the real ABI, not the uname output; one option to do so is to check the ABI of the currently running executable, e.g. ldd on sys.executable as done elsewhere in the script, but still seems fragile; another option is to look at /proc/$pid/maps (probably not portable); another option is to ask libc to do the loading (seems the safest).
Cheers,
won't fix for python2.6, to be removed