On 26 May 2006, at 23:59, Benjohn Barnes wrote:

>
> On 26 May 2006, at 15:53, ara.t.howard / noaa.gov wrote:
>
>> On Fri, 26 May 2006, Gregory Seidman wrote:
>>
>>> On Fri, May 26, 2006 at 11:24:15PM +0900, ara.t.howard / noaa.gov  
>>> wrote:
>>> [...]
>>> } it's not exactly what you're asking, but try
>>> }
>>> }   strings libname.so
>>> }
>>> } on the command line.
>>> }
>>> } another useful command is
>>> }
>>> }   ldd libname.so
>>> }
>>> } also
>>> }
>>> }   man ld.so
>>>
>>> Actually, /usr/bin/nm is probably a better bet than any of these.
>>
>> indeed.  i'm still drinking my coffee! ;-)
>
> Brilliant :) Thanks Ara and Greg - they look good.

Interesting that objective c methods are verbosely described in a  
symbol table. From the man pages of nm:

> If   the   symbol   is  a  Objective  C  method,  the  symbol   
> name  is
>        +-[Class_name(category_name) method:name:],  where  `+'  is   
> for  class
>        methods,  `-'  is  for instance methods, and (category_name)  
> is present
>        only when the method is in a category.


I don't remember if objective c method signatures are typed though,  
or if all of the parameters must be object ids? If the later's the  
case, then you've got just about everything you need in the symbol  
table and the header isn't really needed.