[devel] I: rpm 4.0.4-alt98.49, latter rain
Kirill A. Shutemov
kirill на shutemov.name
Вт Окт 5 13:04:52 UTC 2010
On Tue, Oct 05, 2010 at 02:17:17PM +0400, Alexey Tourbin wrote:
> On Tue, Oct 05, 2010 at 02:01:03PM +0400, Dmitry V. Levin wrote:
> > overlinked libraries означает, что ELF cлинкован с тем, с чем не должен.
> > underlinked libraries означает, что ELF не cлинкован с тем, с чем должен.
> >
> > С первым мы уже давно боремся с помощью -Wl,--as-needed, поэтому наличие
> > overlinked libraries, скорее всего, является следствием использования
> > -Wl,--no-as-needed.
> >
> > Cо вторым мы тоже давно боремся с помощью "%set_verify_elf_method strict".
>
> C недолинковкой вопрос несколько сложнее: verify-elf/ldd не ругается
> на непрямые транзитивные зависимости (по символам), если они разрешаются
> при загрузке. В этом вся соль. И в этом одна из претензий к тулчейну!
>
> Я сейчас не могу придумать тривиальный пример,
$ cat test.c
#include <gdk/gdkwindow.h>
int main()
{
gdk_window_set_cursor(NULL, NULL);
return 0;
}
$ gcc `pkg-config --cflags gtk+-2.0` test.c -o test -lgdk-x11-2.0
$ objdump -p test |grep NEEDED
NEEDED libgdk-x11-2.0.so.0
NEEDED libc.so.6
$ ldd test | wc -l
41
Вы такое имеете ввиду?
> вот менее тривиальный
> пример:
>
> lib.req: WARNING: /usr/lib64/libwx_gtk2u_adv-2.8.so.0.7.0: underlinked libraries: /usr/lib64/libX11.so.6
> lib.req: WARNING: /usr/lib64/libwx_gtk2u_core-2.8.so.0.7.0: underlinked libraries: /usr/lib64/libX11.so.6
>
> Как так можно было слинковать?
> Проблемы в консерватории имеются.
> _______________________________________________
> Devel mailing list
> Devel на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
--
Kirill A. Shutemov
Подробная информация о списке рассылки Devel