2017-09-15 4 views
3

私はperlのバージョンを5.22.1から5.26にアップグレードしようとしました。しかし残念ながら、/ usr/local/binにインストールされています。 /usr/binにあるはずです。perlの場所を変更するには?

システムには両方のバージョンのperlがあります。私はbioperlモジュールを使用しようとしているとき、モジュールを見つけることができないと言って、インストールします。しかし実際には私はすべての必要なモジュールを持っていました。私はこれらのモジュールを先に使っていました。どうすればこの問題を解決できますか?私が何をしたか、実際には

は私が

which perl 

を入力するとそれは

usr/local/bin/perl 

そしてcpanインストールを見せていたrootアクセス

で行った

cp perl 5.26.0 
./Configure -de -Desuches 
make 
make tests 
make install 

ましたで

usr/local/lib/cpan 

どうしてですか?

+0

'/ usr/bin/perl'を上書きしないでください!!!!あなたはあなたのシステムを台無しにするでしょう – ikegami

+0

私は上書きするつもりはありません –

答えて

3

しかし、それはそれはPerlののシステムのインストールを上書きする悪い考えですの/ usr/binに

になるはず。 Perlのバージョンに依存している他のインストールされているソフトウェアの半分以上が壊れてしまいます。あなたが特に不運な場合は、低レベルのシステムツールを壊してしまいます。システムが完全に再インストールされている以外は簡単には回復できない状態になってしまいます。

私はwhich perlを入力するとそれが起こったのはなぜusr/local/lib/cpanに設置usr/local/bin/perlとCPANを見せていましたか?

デフォルトのinstallation prefix/usr/localです。 ./Configureのステップで変更することができます。

どうすればこの問題を解決できますか。

単純な(ただしやや退屈な)方法は、常に完全なパスを使用することです。だから、BioPerlをインストールすることです:

/usr/local/lib/cpan Bio::Perl 

...あなた自身のPerlプログラムにシェバングが

#!/usr/local/bin/perl 

あるなど

インストールしたモジュールは、カスタムPerlのライブラリパスに移動し、あなたのため、これは動作しますカスタムPerlの実行可能ファイルは、それらを見つける方法を知っています。

+0

何とか私は私の新しいバージョンのperlを削除することができましたが、私はいくつかのプログラミング目的のためにperl 5.26を使いたいと思います..私のperl何か提案があっても私が助けてくれるならば。 –

1

perlbrewまたはplenvのようなツールを使用すると、より安全で多くの機能が提供されると思います。たとえば、異なるバージョンのPerlをインストールして、インストール間で衝突することなく、任意のものを使用できます。

システムのperlを変更することはお勧めできません。

関連する問題