[devel] linkage_problems abiword unjoined
Alexey Tourbin
at на altlinux.ru
Пн Июл 12 20:19:14 UTC 2010
On Mon, Jul 12, 2010 at 11:17:03PM +0400, Alexey Tourbin wrote:
> Можно усовершенствовать проверку elfsym, добивив "локальные" условия -
> засчитывать разрешимость только по слинкованным библиотекам. Но это
> сразу открывает a can of wo^W corner cases, начиная с того, что нужно
> ассоциировать файлы и сонеймы (см. warning чуть ниже), и кончая тем,
> что такая проверка будет зарубать недолинкованные плагины, а в схеме
> c -rdynamic executable недолинкованные плагины будут неизбежны (примеры:
> /bin/zsh, /usr/bin/Xorg). И, кроме того, ELF всё же разрешает
> транзитивное разрешение символов. И, кроме того, при большом желании
> в ELF можно зашить DT_NEEDED = libc-2.10.so вместо libc.so.6.
>
> Я уже когда-то рисовал такой скрипт - qa-robot/linkage_problems.
> Жду когда он что-нибудь покажет. Пока вижу только warnings.
Ну вот например показывает что libabiword-2.8 недолинкован с libX11.
[at на people at]$ fgrep libabiword-2.8 unjoined
abiword /usr/lib64/libabiword-2.8.so U XFreeModifiermap
abiword /usr/lib64/libabiword-2.8.so U XGetModifierMapping
abiword /usr/lib64/libabiword-2.8.so U XKeycodeToKeysym
abiword /usr/lib64/libabiword-2.8.so U XKeysymToKeycode
abiword /usr/lib64/libabiword-2.8.so U XParseGeometry
abiword-light /usr/lib64/libabiword-2.8.so U XFreeModifiermap
abiword-light /usr/lib64/libabiword-2.8.so U XGetModifierMapping
abiword-light /usr/lib64/libabiword-2.8.so U XKeycodeToKeysym
abiword-light /usr/lib64/libabiword-2.8.so U XKeysymToKeycode
abiword-light /usr/lib64/libabiword-2.8.so U XParseGeometry
[at на people at]$ rpm -qpR /ALT/Sisyphus/files/x86_64/RPMS/abiword-2.8.4-alt1.x86_64.rpm |grep libX
[at на people at]$
Как могло получиться, что abiword недолинкован с libX11?
У нас же и в binutils подержка есть "подцепить недостающие библиотеки",
и pkg-config для линковки рекурсивно раскрывает список Libs.
Кстати, интересно тогда, что делать в lib.req, если некоторые символы
разрешаются в библиотеки, не перечисленные в DT_NEEDED.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 198 байтов
Описание: отсутствует
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20100713/d98fbb79/attachment.bin>
Подробная информация о списке рассылки Devel