title: Is there a way to know which compiler generated a static library?
body: <p>A third party provided me a static lib (.a) to link with on solaris station.
  I tried to compile with sunpro, and failed at link step.</p>
  
  <p>I suppose the issue is coming from the compiler I use (gcc instead?) or simply its version (as the std lib provided by the compiler could change from the version expected by the library AFAIK it could leads to errors at link step).</p>
  
  <p>How could I know which compiler was used to generate this lib? Is there some tools doing that? Some option in sunpro/gcc or whatever?</p>
  
  <p><strong><em>As an hint:</strong> I've read some time ago that compilers use different mangling conventions when generating object files (true?). Still, <strong>"nm --demangle"</strong> command line prints me well all function names from debug symbols in this static lib. How does it work ? If my assumption is ok, <strong>nm</strong> does have a way to resolve which convention is in use in a static library, isn't it? Or is it simply meaning that lib was generated by GNU gcc, as nm is a part of GNU binutils?</em></p>
  
  <p>I am not close to my workstation so I can't copy &amp; paste error output from the linker (not for the moment but I could copy them in a further edit) </p>