[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