Skip to content

binary fails to load (_dl_check_map_versions) after patchelf --set-rpath  #192

Closed
@pespin

Description

@pespin

Original ticket tacking the issue: https://osmocom.org/issues/4389

So, in summary:
I was using patchelf 0.9-1+b1 from debian9 repos, but run into issue #47 with binary "srsue" from srsLTE.git [1]:

$ patchelf --set-rpath /osmo-gsm-tester-srsue/srslte/lib /osmo-gsm-tester-srsue/srslte/bin/srsue
warning: working around a Linux kernel bug by creating a hole of 124461056 bytes in ‘/osmo-gsm-tester-srsue/srslte/bin/srsue’
maximum file size exceeded

so I then went into building/installing a new version of patchelf. I tried with following patchelf versions:

  • 0.9+52 (debian10 patchelf_0.9+52.20180509-1_amd64.deb)
  • 0.10 (last release Download tarball and bult manually)
  • master (from git, 2ba6481)

All of them fix the issue #47 on binary "srsue". However, all those new versions introduce a new bug with another binary generated by srsLTE.git [1] called "srspec". Patching itself seems to be working fine (patchelf doesn't exit with !=0), but afterwards the loader is unable to load the binary:

# ldd /osmo-gsm-tester-srsepc/srslte/bin/srsepc
Inconsistency detected by ld.so: dl-version.c: 224: _dl_check_map_versions: Assertion `needed != NULL' failed!

This issue doesn't show up with the original patchelf 0.9-1+b1 from debian9 I was using, so it's a regression added at some point after that and yet not fixed last release nor in currentmaster.

[1] https://github.com/srsLTE/srsLTE

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions