2016-04-11 14 views
1

CPANMを使用してCPANMを使用してCPANMを使用しています。Perl - C: Perl libの代わりにC: Perl lib perl5フォルダにインストールする

私のperlのインストールはC:\ Perlと私のlibフォルダはC:\ Perlの\ libに

CPANMモジュールとの依存関係は、私はMIMEをダウンロード方法については、次の(例を使用して別のマシン上でローカルにダウンロードされました: :ライト): - MIMEをインストールするには、次の使用

cpanm -q --scandeps MIME::Lite --save-dists c:\dist 

::他のマシン上

cpanm --mirror file:///C:/dist/ -l c:/perl MIME::Lite 

Liteは問題がcpanmはCで私のモジュールをインストールしていることである:\ Perlの\ lのib \ perl5の代わりにC:\ Perl \ libにモジュールをインストールしたい場合

このデフォルト動作をどのように変更するのか分かりません。

環境は、Windows、Perlの-V

ActivePerl Build 2003 [299574] 
    Built under MSWin32 
    Compiled at Dec 25 2015 11:33:14 
    %ENV: 
    PERL5LIBX="%PERL5LIB%" 
    PERL_MM_OPT="INSTALL_BASE=y" 
    @INC: 
    C:/Perl/site/lib 
    C:/Perl/lib 
    . 
+1

まず、env var PERL_MM_OPTを設定解除します。それはとにかくゴミだ。 Perl -V:inst。* lib'の出力を提供してください – ikegami

+0

ありがとうございました。ここに出力があります: perl -V:inst。* lib installarchlib = 'C:\ Perl \ lib'; installprivlib = 'C:\ Perl \ lib'; installsitelib = 'C:\ Perl \ site \ lib'; installvendorlib = ''; – user2574678

+0

@ikegami - あなたのご意見ありがとうございます、私はあなたが提案したenv varを取り除き、cpanm --mirrorファイルを使用しました:/// c:/ dist/MIME :: Lite – user2574678

答えて

0

cpanm-lオプションとPERL_MM_OPTINSTALL_BASEオプション設置場所を上書きからの抜粋です。それらがなければ、ライブラリのインストーラは正しいインストールパスをperlから取得します。言い換えれば、

set PERL_MM_OPT= 
set PERL_MB_OPT= 
cpanm --mirror file:///c:/dist/ MIME::Lite 

set PERL_MM_OPT="INSTALL_BASE=y" 
set PERL_MB_OPT= 
cpanm --mirror file:///C:/dist/ -l c:/perl MIME::Lite 

を変更するには、働いていました。

0

私は同じような状況があったが、いくつかの記事の後に私はthisが見つかりました:

コアモジュールは、非コアモジュールのに対し、perlの/ libの下にインストールされている はperlの/サイト/ libの下にインストールします。

元のインストールに付属していたモジュールは、libに入っています。 新しいバージョンがサイト/ libに入ります。少なくともActiveState Perlと Strawberry Perl(両方ともWindows版)。

関連する問題