簡體   English   中英

安裝CPAN模塊而不會影響系統Perl的安裝

[英]Install CPAN Modules without messing up the system Perl installation

我聽說最好不要從系統版本的Perl所在的CPAN安裝模塊。 我知道如何使用命令行安裝模塊,我只是想知道是否存在一種使CPAN與系統核心Perl分開的方法。

我是不是該:

下載源代碼並為這些模塊創建一個目錄?

有人成功使用了其他想法或實現嗎?

CPAN始終與核心分開–注意/usr/lib/perl5具有子目錄core_perlvendor_perl (發行版打包的CPAN模塊)和site_perl (本地安裝的模塊)。

ExtUtils :: MakeMakerModule :: Build都默認將所有內容都安裝到“ site”目錄中。 這也適用於使用cpancpanm命令安裝的cpan cpanm 如果您使用Linux發行版的軟件包,則轉到“供應商”路徑。

您可以使用以下方法指定其他安裝位置(例如,將所有CPAN模塊保留在家庭目錄中):

dir=~/perl5

export PERL5LIB="${dir}"
export PERL_MM_OPT="INSTALL_BASE='${dir}'"
export PERL_MB_OPT="--install-base '${dir}'"

當您安裝在系統目錄中時,所冒的風險是每個與系統相關的Perl腳本都將使用這些模塊。 如果其中一個模塊是系統使用的模塊的較新版本且不兼容,則您將不滿意。

建議在專用目錄中安裝的方法是使用local :: lib。 請參閱引導技術: https ://metacpan.org/module/local:: lib

一旦設置了local :: lib,就可以使用任何標准CPAN客戶端來安裝模塊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM