librt.so fails to load

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Hello all,

I'm using uClibc-0.9.29 for ARM. I compiled and loaded PHP which
requires librt.so.
When ldso tries to load librt.so, it fails with "Can't modify
librt.so's text section. Use GCC option -fPIC for shared objects,
please".
I tracked the print in the code. It's in dl-elf.c under:
    if (dynamic_info[DT_TEXTREL]) {
...
        _dl_dprintf(_dl_debug_file, "Can't modify %s's text section. Use GCC
option -fPIC for shared objects, please.\n",libname);
        _dl_exit(1);

However, I did compile librt with -fPIC and when I objdump -x it, I
see that:
Dynamic Section:
  NEEDED      libc.so.0
  SONAME      librt.so.0
  HASH        0x134
  STRTAB      0x414
  SYMTAB      0x204
  STRSZ       0x15e
  SYMENT      0x10
  PLTGOT      0x9000
  PLTRELSZ    0x20
  PLTREL      0x11
  JMPREL      0x57c
  REL         0x574
  RELSZ       0x8
  RELENT      0x8
  TEXTREL     0x0

So TEXTREL is not set.
Is anyone aware of a bug in ldso that would cause that? Any other
suggestions?

Site Timeline