GNU linker: alternative to --version-script to list exported symbols at the command line ?

Posted by David Cournapeau on Stack Overflow See other posts from Stack Overflow or by David Cournapeau
Published on 2009-04-27T03:51:22Z Indexed on 2010/05/12 10:54 UTC
Read the original article Hit count: 214

Filed under:
|
|

On Linux with the GNU toolchain, I know how to control exported symbols from a shared library with a version script (gcc -Wl,--version-script=symbols.map), but I would like to list exported symbols on the command line instead. IOW, I would like the equivalent of

link /EXPORT:foo

from the MS toolchain. Is it possible ?

EDIT:

My question may not be very clearn: if I have a library libfoo.so, and I want to only export libraries foo1 and foo2, I can go create a version script foo.linux as follows

libfoo.so
{
global:
    foo1;
    foo2;
local:
    *;
}

And do

gcc -shared foo.c -Wl,--version-script=foo.linux -o libfoo.so -soname libfoo.so

I would like to be able to do something like this instead:

gcc -shared foo.c -Wl,--export-symbol=foo1 -Wl,--export-symbol=foo2 -o libfoo.so -soname libfoo.so

© Stack Overflow or respective owner

Related posts about linker

Related posts about linux