Jump to content
  • Advertisement
Sign in to follow this  
Zipster

Strange linker error/warning: symbol missing from main hash table

This topic is 644 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

There is a particular shared library in our code base that produces the following output when linked (mk7i-ld is the linker provided by our toolchain team; I couldn't tell you how it difers from the stock version, but it's based on ld 2.17):

/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `no symbol' missing from main hash table
/usr/bin/mk7i-ld: symbol `' missing from main hash table
/usr/bin/mk7i-ld: symbol `' missing from main hash table
/usr/bin/mk7i-ld: symbol `' missing from main hash table
/usr/bin/mk7i-ld: symbol `' missing from main hash table
/usr/bin/mk7i-ld: symbol `' missing from main hash table
/usr/bin/mk7i-ld: symbol `' missing from main hash table
/usr/bin/mk7i-ld: symbol ` ' missing from main hash table
/usr/bin/mk7i-ld: symbol `$' missing from main hash table
/usr/bin/mk7i-ld: symbol `,' missing from main hash table
/usr/bin/mk7i-ld: symbol `.debug_line' missing from main hash table
/usr/bin/mk7i-ld: symbol `.dynamic' missing from main hash table
/usr/bin/mk7i-ld: symbol `9:' missing from main hash table
/usr/bin/mk7i-ld: symbol `=' missing from main hash table
' missing from main hash table
/usr/bin/mk7i-ld: symbol `__libc_enable_secure' missing from main hash table
/usr/bin/mk7i-ld: symbol `__libc_enable_secure@@GLIBC_PRIVATE' missing from main hash table
/usr/bin/mk7i-ld: symbol `__libc_stack_end' missing from main hash table
/usr/bin/mk7i-ld: symbol `__libc_stack_end@@GLIBC_2.1' missing from main hash table
/usr/bin/mk7i-ld: symbol `__tls_get_addr' missing from main hash table
/usr/bin/mk7i-ld: symbol `__tls_get_addr@@GLIBC_2.3' missing from main hash table
/usr/bin/mk7i-ld: symbol `__tls_get_addr@GLIBC_2.3' missing from main hash table
/usr/bin/mk7i-ld: symbol `_dl_deallocate_tls' missing from main hash table
/usr/bin/mk7i-ld: symbol `_dl_deallocate_tls@@GLIBC_PRIVATE' missing from main hash table
/usr/bin/mk7i-ld: symbol `_dl_deallocate_tls@GLIBC_PRIVATE' missing from main hash table
/usr/bin/mk7i-ld: symbol `_dl_get_tls_static_info@@GLIBC_PRIVATE' missing from main hash table
/usr/bin/mk7i-ld: symbol `_dl_make_stack_executable' missing from main hash table
/usr/bin/mk7i-ld: symbol `_dl_make_stack_executable@@GLIBC_PRIVATE' missing from main hash table
/usr/bin/mk7i-ld: symbol `_dl_make_stack_executable@GLIBC_PRIVATE' missing from main hash table
/usr/bin/mk7i-ld: symbol `_rtld_global' missing from main hash table
/usr/bin/mk7i-ld: symbol `_rtld_global@@GLIBC_PRIVATE' missing from main hash table
/usr/bin/mk7i-ld: symbol `ersion_d' missing from main hash table
' missing from main hash table
/usr/bin/mk7i-ld: symbol `?' missing from main hash table
/usr/bin/mk7i-ld: symbol `?' missing from main hash table
/usr/bin/mk7i-ld: symbol `?' missing from main hash table
?1?r/bin/mk7i-ld: symbol `?:?
' missing from main hash table
' missing from main hash table

I've searched everywhere, but can't really find any details or information on what this error means or how to fix it. It doesn't appear to affect the behavior of our library, as everything links and runs as expected, however it's a blemish I'd like to remove. I copy-pasted everything verbatim from the terminal window (including the weird symbols).

 

Anyone seen this before or have any ideas what causes it?

Share this post


Link to post
Share on other sites
Advertisement

Looks like one messed-up linker to me.  Betcha there's all kinds of invalid memory accesses going on inside it.    Running it under valgrind will probably net you a whole lot of holy cow.

Share this post


Link to post
Share on other sites

or have any ideas what causes it
None, but you could check the formats+versions accepted by the linker, and the format(s)+version(s) produced by the compiler (or the format+version of files you have on the disk).

 

Maybe the compiler decided to throw in some additional symbols that the linker doesn't know what to do with them :)

Share this post


Link to post
Share on other sites

Thanks for the responses, I'll raise the issue with our tools team and see if this isn't something they'd be willing to investigate!

Share this post


Link to post
Share on other sites

Are you guys running some home-brewed version of glibc? That's no blemish, that a space-station of an error, in my opinion.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!