[freebsd] pkg (was: Ржавый)
Taras Heichenko
tasic at academ.kiev.ua
Sat Jun 11 15:19:36 EEST 2022
Спасибо за подробный ответ. Фактически если какой-то пакет не может быть собран локально,
то приходится использовать пекеджи, а не порты. (Ну это конечно если не собрать на другой машине
пекедж под эту архитектуру и зависимости, что тоже может оказаться весьма сексуальным занятием.)
Печально, хотя и логично.
> On 11 Jun 2022, at 14:20, Eugene Grosbein <eugen at grosbein.net> wrote:
>
> 11.06.2022 16:42, Taras Heichenko пишет:
>>
>>
>>> On 10 Jun 2022, at 15:32, Anton Saietskii <vsasjason at gmail.com> wrote:
>>>
>>> Мда, "нетекущий" ржавый жрёт памяти на порядки больше, чем безб-жно текущий С...
>>
>> Сорри, за дурацкий вопрос – давно не пользовался pkg для установки чего-либо. А может
>> кто-то объяснить, а почему команда
>>
>> pkg install rust
>> предлагает удалить вот такой список пакетов (вопрос собственно не в том, почему список именно
>> такой, а в том, зачем это все удалять, чтобы поставить rust из пекеджа)?
>> avahi-app: 0.8
>> cairo: 1.17.4,3
>> cups: 2.3.3op2
>> dbus-glib: 0.112
>> ghostscript9-agpl-base: 9.55.0
>> glib: 2.70.4_5,2
>> gnupg: 2.3.3_3
>> gnutls: 3.7.4
>> gobject-introspection: 1.70.0,1
>> gpgme: 1.17.1
>> graphviz: 2.50.0
>> harfbuzz: 4.0.0
>> mutt: 2.2.3
>> p11-kit: 0.24.1
>> pango: 1.50.4
>> portupgrade: 2.4.16,2
>> py38-cffi: 1.15.0
>> py38-cryptography: 3.3.2
>> py38-openssl: 20.0.1
>> py38-recommonmark: 0.5.0_2
>> py38-requests: 2.25.1
>> py38-sphinx: 4.3.1,1
>> py38-urllib3: 1.26.8,1
>> ruby: 2.7.6,1
>> ruby27-bdb: 0.6.6_8
>> ruby27-gems: 3.3.7_1
>> rubygem-psych: 4.0.3
>> rubygem-rdoc: 6.4.0
>> rubygem-stringio: 3.0.1
>> tex-basic-engines: 20210325
>> tex-web2c: 20210325
>
> Потому что pkg настаивает на том, чтобы зависимости устанавливаемого пакета
> безусловно соблюдались с точностью. Никаких отклонений не допускается.
>
> Например, в пакете rust прописана зависимость от *конкретной* версии пакета curl.
> Если у вас curl установлен любой другой версии, pkg попытается удалить curl
> и установить пакет curl именно той версии, которая прописана в зависимости
> устанавливаемого пакета rust. А так как от curl нынче зависит много всего,
> то pkg будет вынужден удалить и всё, что зависит от curl, а так же всё,
> что зависит от тех пакетов и так далее, и заменить их на версии из того же репозитория,
> откуда ставятся rust и curl.
>
> Иногда поведение pkg можно слегка откорректировать предварительным запретом
> удалять какой-нибудь установленный пакет, типа: pkg lock curl-7.73.0
> Тогла pkg не будет пытаться снести curl и всё зависимое от него,
> но это чревато тем, что целевой пакет хотя и установится, но работать не будет.
>
> Например, установленный пакет даёт /usr/local/lib/libcurl.so.4
> а в целевом пакете бинарники слинкованы с другой версией либы и просто не запустятся.
> Опять же можно в крайнем случае использовать libmap.conf(5) и заставить их таки запуститься,
> но это чревато разнообразными глюками и даже сегфолтами.
>
>
>
>
>
> _______________________________________________
> freebsd mailing list
> freebsd at uafug.org.ua
> http://mailman.uafug.org.ua/mailman/listinfo/freebsd
--
Taras Heichenko
tasic at academ.kiev.ua
More information about the freebsd
mailing list