[devel] libstdc++4.1-devel сломан?

Dmitry V. Levin =?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Пт Июн 2 17:17:57 MSD 2006


On Fri, Jun 02, 2006 at 03:00:32PM +0400, Alexey Tourbin wrote:
> On Fri, Jun 02, 2006 at 11:47:11AM +0400, Damir Shayhutdinov wrote:
> > 01.06.06, Alexey Tourbin<at на altlinux.ru> написал(а):
> > > > Убрать -Wl,-z,defs - в этом всё равно нет смысла при линковке -shared.
> > >
> > > Почему не имеет смысла?>
> > ld(1)
> > ----
> > -z
> >            defs
> >                Disallows undefined symbols in object files.  Undefined symbols
> >                in shared libraries are still allowed.
> 
> Автор мана имел в виду другое.

Что именно?

> $ cat test.c
> test()
> {
>         no_such_function();
> }
> $ gcc -shared -fPIC -o libtest.so test.c
> $ ls -l libtest.so
> -rwxr-xr-x 1 at at 5591 Jun  2 14:54 libtest.so
> $ gcc -shared -fPIC -o libtest.so test.c -Wl,-z,defs
> /tmp/.private/at/ccCRSta9.o: In function `test':
> test.c:(.text+0x14): undefined reference to `no_such_function'
> collect2: ld returned 1 exit status
> $ 

Ну и что?  Часть символов живёт в ld.so и тем самым делает -Wl,-z,defs
малопригодным на практике.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 191 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20060602/00766946/attachment-0001.bin>


Подробная информация о списке рассылки Devel