Exporting symbols

Dan Timis timis at museresearch.com
Wed May 12 19:43:59 CDT 2004


Oops.  I misspoke.

I was relating what a colleague told me.  After I sent the message I 
thought I would try it myself (I should have tried before).  Running 
"strip" does remove the symbols and running "nm" after that does not 
show any symbols.

My colleague clarified the problem.  After running strip if you run 
"strings -a" all the names of the function calls are still there as 
strings.

So the real question is, can we get rid of those strings?  What is 
their role?

Thanks,

Dan Timis
Muse Research, Inc.

On Wednesday, May 12, 2004, at 04:34 PM, Dan Timis wrote:

> Hi,
>
> We need to have a library that links statically to a wine application. 
>  The wine application is an .exe.so, so everything becomes in the end 
> an exe.so.  The problem we have is that all the symbols are exposed.
>
> I have very little experience with Windows, but I understand that with 
> a Windows DLL you can export certain functions, while hiding the 
> others.  I know that's also true for the Mac.
>
> Is there any way to export only the functions that are called by the 
> code we link to, without exposing the internal workings?  Ideally we 
> would like to be able to provide a static library created with ar or 
> ranlib, link that library with other object files to create a .exe.so 
> for wine, but when you do "nm" on the resulting .exe.so you would not 
> see all the inner workings of our library.
>
> Is that possible?
>
> Thanks,
>
> Dan Timis
> Muse Research, Inc.
>
>




More information about the wine-devel mailing list