CPAN по сравнению с APT: Конфликты в версиях?

Я не могу найти ответ на это нигде: модуль, установленный через APT, конфликтуют с одним установленным через CPAN?

Наряду с тем вопросом они: Где установленные модули CPAN живут? Действительно ли они доступны глобально или только пользователю установки? Как Вы знаете который? Как Вы знаете то, что установлено и который имеет приоритет?

CPAN должен даже использоваться, когда модули установлены через APT?

9
задан 24 October 2019 в 23:27

4 ответа

На Debian и Ubuntu CPAN (/usr/bin/cpan утилита), устанавливает модули в /usr/local/lib/ по умолчанию. И пакеты debian удерживают свои файлы /usr/share/perl5/ и /usr/lib/perl5/. Так файлы, установленные через /usr/bin/cpan не перезапишет файлы, установленные через Кв.

Нет ничего неправильно с использованием системного жемчуга, и склонное смешивание и код cpan будет обычно работать.

Можно также принять решение упаковать любое cpan распределение, не доступное в способных репозиториях вручную. Это легко с помощью dh-make-perl инструмента:

dh-make-perl --cpan Some::Module && cd Some-Module* && sudo debi
8
ответ дан 23 November 2019 в 04:50

Я использую perlbrew. Это устанавливает локальную версию Perl и cpan. Все, что это делает, сделано в Вашем корневом каталоге. Это является прямым, чтобы установить и использовать, и можно установить последнюю версию Perl.

6
ответ дан 23 November 2019 в 04:50

При установке от CPAN непосредственно я рекомендовал бы использовать local::lib для каталога, частного Вам. Посмотрите boostrapping технику https://metacpan.org/module/local:: lib

Тем путем установленный модуль CPAN будет только использоваться Вашим пользователем, и он будет иметь очень чистое разделение от модулей установленным с помощью APT.

Это также поможет избавиться от CPAN-установленных модулей при обнаружении с какой-либо проблемой или когда Вы обновляете Ubuntu.

Это - то, как я использую его на Ubuntu.

4
ответ дан 23 November 2019 в 04:50

Можно использовать обоих, но они будут конфликтовать. Они записаны в то же место поэтому, если Вы устанавливаете что-то из Кв. и затем устанавливаете более позднюю версию от cpan, Вы могли bodge вещи.

Я не делаю большого количества Perl, но в Python у меня, конечно, есть дилемма, о которой Вы говорите: apt-vs-PyPI. Я лично выбираю Кв. каждый раз, когда я могу. Это означает, что я должен получить обновления, не имея необходимость не забывать поддерживать каждый отдельный пакет Python. Не только это, но и это означает, что все мои системы должны работать на той же версии тех пакетов.

Это не всегда удается. Иногда у Вас нет достаточно новых вещей в repos или чем-то, в чем Вы нуждаетесь, просто не упаковывается. Никакой путь не прекрасен, но я верю склонный быть более прекрасным. Просто знайте о том, что Вы делаете, и необходимо быть хорошо.


Редактирование - Почти забыло, существует лучший способ разделить вещи, таким образом, система может иметь свою собственную среду и независимо от того, что Вы разрабатываете, может жить в ее собственной среде (что Вы справляетесь полностью с CPAN), Как Python virtualenv...

https://stackoverflow.com/questions/1423879/how-can-i-install-specialized-environments-for-different-perl-applications

1
ответ дан 23 November 2019 в 04:50

Другие вопросы по тегам:

Похожие вопросы: