Quote:
Originally Posted by knc1
even easier -
borrow a copy of glibc-2.15 (or newer) from Debian/Jessie/ARMel - add it to the */esys/lib directory.
then patchelf the application's library path to look for it there rather in the usual, reserved system directories.
Linux uses ELF format binaries, ELF systems support the (concurrent) use of multiple system libraries.
See my ARMhf on Kindle thread for a worked example in detail.
(In that case, it was a different version and it was hard float rather than soft float - but the principles are the same).
|
Hi, I tried your method, but it is still not working. The program complains,
```
ImportError: /lib/libc.so.6: version `GLIBC_2.15` not found (required by /mnt/us/extensions/python/usr/lib/arm-linux-gnueabi/libaudio.so.2)
```
I firstly tried to set LD_LIBRARY_PATH and place 'libc.so.6' extracted from debian/jessie/armeabi under LD_LIBRARY_PATH. But the program still loads 'libc.so.6' from '/lib/libc.so.'6.
Then I used PatchELF to add RUNPATH '.' to 'python2.7', which is the executable, and put libc.so.6 the same directory as 'python2.7'. But it still loads from '/lib/libc.so.6'.
finally I inspected 'libaudio.so.2' with 'readelf -d', but there is no RUNPATH. The command 'ldd python2.7' and 'ldd libaudio.so.2' also gives linkage to '/lib/libc.so.6'.
I really can't figure it out, can you help me please.