[devel] I: lib.req: upgraded "library not found" warnings to errors

Vitaly Lipatov lav на altlinux.ru
Ср Фев 9 03:54:34 MSK 2022


Dmitry V. Levin писал(а) 9.2.22 3:11:
> On Tue, Feb 08, 2022 at 11:50:39PM +0300, Vitaly Lipatov wrote:
...
>> Вы не могли бы подсказать хороший способ для этого?
>> Вот к примеру
>> https://git.altlinux.org/tasks/295053/gears/10/git?p=git;a=blob;f=test_lib_requires2.spec;h=93cbd138404bdff484450d986f7b42f0a6721d4f;hb=57d1826fc867f8617bb0de9e0cb3af1c872a3161
>> 
>> у меня есть приватная библиотека ntdll.so, которая расположена в
>> %_libdir/%name
>> Там же находится линкующаяся с ntdll.so библиотека sane.so.
> 
> По идее, достаточно сделать %add_findprov_lib_path %_libdir/%name,
> плюс что-то у линкующихся, например, rpath или ld.so.conf,
> должно навести линкер на мысль поискать библиотеку в %_libdir/%name/.
Видимо я не хочу наводить линкер на мысль, делать rpath или тем более 
ld.so.conf.
К тому же такое указание приведёт к появлению provides всех библиотек в 
%_libdir/name, а они никому не нужны снаружи.

В Wine придерживаются подхода, что его можно запускать из любого 
каталога, потому там не будет rpath для библиотек. Если его добавлять, 
то надо понимать, за что мы боремся.

>> Я смог найти только такой вариант:
>> 1. Положил ntdll.so также и в %_libdir
>> 2. Убрал генерируемые зависимости на неё:
>> %filter_from_requires /^ntdll.so()(64bit).*/d
>> 3. Не стал упаковывать %_libdir/ntdll.so в пакет, потому что она там 
>> не
>> нужна.
> 
> Это по сути способ отключить проверку зависимостей на ntdll.so.
Да. Но я думал, что есть менее костыльный.

>> https://git.altlinux.org/tasks/295053/build/10/x86_64/log
>> 
>> А как было бы лучше? При условии, что мне нужны auto requires для
>> ntdll.so, но не нужны auto provides для неё.
> 
> Почему вы хотите избежать auto provides вида
> %_libdir/%name/ntdll.so()(64bit) ?
Ну я думал, что начнётся история с дубликатами. Пакетов с ntdll.so 
внутри может быть много, но снаружи об этом незачем знать.
Но видимо, если полный путь, то не начнётся. Просто чтобы не мусорить?

-- 
С уважением,
Виталий Липатов,
ALT Linux Team


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