This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: removing symbol from shared lib


To answer my own question:

Yes it is possible with the minimal setup below. It just doesn't work in a more complicated real world case, which doesn't lend itself for public consumption (yet).

Erik Leunissen
==============

> cat a.c
void
X ()
{
}
> cat b.c
extern void X();
void
Y ()
{
X();
}
> gcc -c a.c b.c
> gcc -shared -nostdlib -o ab.so a.o b.o
> nm ab.so
00001328 A __bss_start
000012a4 A _DYNAMIC
00001328 A _edata
00001328 A _end
0000131c A _GLOBAL_OFFSET_TABLE_
0000028c T X
00000294 T Y
> objcopy -L X ab.so
> nm ab.so
00001328 A __bss_start
000012a4 A _DYNAMIC
00001328 A _edata
00001328 A _end
0000131c A _GLOBAL_OFFSET_TABLE_
0000028c t X
00000294 T Y
> objcopy -x ab.so
> nm ab.so
00001328 A __bss_start
000012a4 A _DYNAMIC
00001328 A _edata
00001328 A _end
0000131c A _GLOBAL_OFFSET_TABLE_
00000294 T Y
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]