15.10.2012 12:07, Eugene Grosbein пишет:
> 15.10.2012 14:55, Борис Самородов пишет:
>> 15.10.2012 10:15, Eugene Grosbein пишет:
>>
>>> К сожалению, pkg_libchk не знает о /usr/local/lib/compat/pkg,
>>> куда portupgrade складывает прежние версии обновляемых библиотек
>>> и поэтому выдаёт много ложных результатов.
>>
>> Хм... Из PKG_LIBCHK(1):
>> -----
>> [...]
>> DESCRIPTION
>>      The pkg_libchk script uses pkg_info(1), ldd(1) and readelf(1) to check
>>      whether a package is linked against missing libraries or libraries
>> resid-
>>      ing in /usr/local/lib/compat and its subfolders.
>> [...]
>>      -n --no-compat
>>              This deactivates detecting compat libraries in
>>              /usr/local/lib/compat as missing libraries.
>> -----
> 
> Пробовал - этот ключ сильно уменьшает количество ложных
> срабатываний, но почему-то не до конца:

Давай для начала определимся с терминологией. "Ложные срабатывания" --
это "приложение полностью работоспособно", поэтому pkg_libchk не прав?

> $ pkg_libchk -n
> boost-libs-1.39.0: /usr/local/lib/libboost_regex.so.4 misses libicudata.so.38
> boost-libs-1.39.0: /usr/local/lib/libboost_regex.so.4 misses libicui18n.so.38
> boost-libs-1.39.0: /usr/local/lib/libboost_regex.so.4 misses libicuuc.so.38
> 
> $ locate libicudata.so.38 libicui18n.so.38 libicuuc.so.38

Надеюсь, база locate у тебя соответствует действительности. ;-)

> /usr/local/lib/compat/pkg/libicudata.so.38
> /usr/local/lib/libicudata.so.38.1

Откуда взялся вот этот файл? Мне кажется, ему там не место. Если уж
libicudata.so.38 лежит в compat. То же самое и два других.

> /usr/local/share/google-earth/libicudata.so.38
> /usr/local/lib/compat/pkg/libicui18n.so.38
> /usr/local/lib/libicui18n.so.38.1
> /usr/local/lib/compat/pkg/libicuuc.so.38
> /usr/local/lib/libicuuc.so.38.1
> /usr/local/share/google-earth/libicuuc.so.38

А этот может конфликтовать в тем, который лежит в compat...

-- 
WBR, Boris Samorodov (bsam)
FreeBSD Committer, http://www.FreeBSD.org The Power To Serve

Ответить