[devel] I: rpm 4.0.4-alt98.49, latter rain

Dmitry V. Levin ldv на altlinux.org
Вт Окт 5 10:01:03 UTC 2010


On Tue, Oct 05, 2010 at 04:46:39PM +0800, REAL wrote:
> Alexey Tourbin пишет:
> >>>$ /usr/lib/rpm/lib.req /usr/lib64/libgsm.so.1
> >>>lib.req: WARNING: /usr/lib64/libgsm.so.1: overlinked libraries: 
> >>>/lib64/libm.so.6
> >>>lib.req: WARNING: /usr/lib64/libgsm.so.1: underlinked libraries: 
> >>>/lib64/libc.so.6
> >>>libm.so.6()(64bit)
> >>>$
> >>А поподробнее? Что-то я не улавливаю 
> >>суть этой фичи.
> >
> >Желаете уловить?-)
> >
> >Есть требуемые библиотеки, зашитые в 
> >бинарике, на уровне DT_NEEDED.
> >С другой стороны, есть набор библиотек, 
> >который получается вследствие
> >загрузки бинарика средствами ld.so(8) и ldd(1). 
> >Во втором случае
> >делается срез по используемым символа, 
> >weak-символы обрабатываются
> >корректно.
> >
> >Так вот, набор "зашитых" и набор 
> >"фактически используемых" (по символам)
> >библиотек может не совпадать.  
> >Диагностика строится на этом.
> 
> Хорошо, но как это коррелируется с выше 
> процитированным? Что именно 
> подразумевается под "overlinked libraries" и 
> "underlinked libraries"?

overlinked libraries означает, что ELF cлинкован с тем, с чем не должен.
underlinked libraries означает, что ELF не cлинкован с тем, с чем должен.

С первым мы уже давно боремся с помощью -Wl,--as-needed, поэтому наличие
overlinked libraries, скорее всего, является следствием использования
-Wl,--no-as-needed.

Cо вторым мы тоже давно боремся с помощью "%set_verify_elf_method strict".


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 198 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20101005/d5cf5b16/attachment-0001.bin>


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