Não consigo encontrar a resposta para isso em nenhum lugar: um módulo instalado via APT entra em conflito com outro instalado via CPAN?
Junto com essa pergunta, estão os seguintes: Onde vivem os módulos CPAN instalados? Eles são acessíveis globalmente ou apenas para o usuário instalador? Como você sabe qual? Como você sabe o que está instalado e o que tem precedência?
O CPAN deve mesmo ser usado quando os módulos são instalados via APT?
cpan
módulos instalados terminam é determinado pelos PERLsConfig.pm
. No meu Ubuntu 11.04, é/usr/local/share/perl/5.10.1
./usr/local/share
para módulos pure-perl e/usr/local/lib
para coisas xs.Eu uso perlbrew . Ele instala uma versão local do Perl e cpan. Tudo o que faz é feito no seu diretório pessoal. É simples de instalar e usar, e você pode instalar a versão mais recente do Perl.
fonte
Ao instalar diretamente do CPAN, eu recomendaria o uso de local :: lib em um diretório privado para você. Veja a técnica do boostrapping https://metacpan.org/module/local::lib
Dessa forma, o módulo instalado do CPAN será usado apenas pelo usuário e terá uma separação muito limpa dos módulos instalados usando o APT.
Também facilitará a remoção dos módulos instalados pelo CPAN, se você encontrar algum problema ou quando atualizar o Ubuntu.
É assim que eu uso no Ubuntu.
fonte
Você pode usar os dois, mas eles entrarão em conflito. Eles são gravados no mesmo local; portanto, se você instalar algo do apt e depois instalar uma versão posterior do cpan, poderá resolver as coisas.
Eu não faço muito Perl, mas em Python eu certamente tenho o dilema que você está falando: apt-vs-PyPI. Pessoalmente, opto pelo apt sempre que posso. Isso significa que eu deveria receber atualizações sem ter que me lembrar de manter cada pacote Python individual. Não apenas isso, mas significa que todos os meus sistemas devem estar executando na mesma versão desses pacotes.
Nem sempre funciona. Às vezes, você não tem coisas novas o suficiente nos repositórios ou algo que você precisa simplesmente não está empacotado. Nenhuma das maneiras é perfeita, mas acredito que seja mais perfeita. Esteja ciente do que você está fazendo e você deve ficar bem.
Editar - Quase esqueci, existe uma maneira melhor de separar as coisas para que o sistema possa ter seu próprio ambiente e o que você estiver desenvolvendo possa viver em seu próprio ambiente (que você gerencia completamente com o CPAN), como o Python
virtualenv
.../programming/1423879/how-can-i-install-specialized-environments-for-different-perl-applications
fonte
Site
ousite
diretório - ou que pelo menos você poderia forçá-lo.cpan
módulos instalados terminam em / usr / local / share / perl (ou o local especificado pelos PERLConfig.pm
), enquanto os pacotes APT terminam em / usr / share / perl5 conforme a política Debian. Portanto, eles não entram em conflito e é seguro misturar e combinar as instalações de CPAN e APT, como dizem as outras respostas. (Python não é uma boa analogia aqui: PERL embalagem e manipulação de módulo é muito diferente e -IMHO- superior ao Python.)