debugging ld, “Inconsistency detected by ld.so”

前端 未结 1 1196
感动是毒
感动是毒 2021-01-02 07:38

I am trying to use a widget library called GLV for an application I am developing. I am running Linux Mint 17. I installed all the libraries and I have succeeded in building

相关标签:
1条回答
  • 2021-01-02 08:06

    Inconsistency detected by ld.so: dl-version.c: 224: _dl_check_map_versions: Assertion 'needed != ((void *)0)' failed!

    This is a bug in glibc, or a corruption in one of your shared libraries. The glibc code reads:

      while (1)
      {
         ElfW(Vernaux) *aux;
         struct link_map *needed = find_needed (strtab + ent->vn_file, map);
    
         /* If NEEDED is NULL this means a dependency was not found
            and no stub entry was created.  This should never happen.  */
         assert (needed != NULL);
     ...
    

    Your options at this point are:

    • reinstall and verify md5sums for all libraries involved to rule out on-disk corruption, and
    • install debuginfo package for glibc, and try to understand which library and which symbol version is triggering the assertion, or
    • report this in appropriate bug tracker for your Linux distro.

    Setting LD_DEBUG=symbols,bindings or even LD_DEBUG=all may also provide some clues on exactly which symbols are being looked up.

    0 讨论(0)
提交回复
热议问题