Suse Linux で perl58 から perl588 に perl をアップグレードします。以前のバージョン用の Config.pm が存在するにもかかわらず、新しいバージョンをインストールすると古いバージョンが破損するようです。HP や AIX などの他の OS で Perl をアップグレードしても、古いバージョン。例: perl58 および perl588 バージョンは、次のように "/usr/standard_perl" というフォルダーに存在します。
/usr/standard_perl/perl58 (directory)
/usr/standard_perl/perl588 (directory)
それを指すシンボリックリンクがあります。
アップグレード前後のリンクは次のとおりです。
前:
perl58_link -> /usr/standard_perl/perl58
後:
perl5_link -> /usr/standard_perl/perl588
perl58_link -> /usr/standard_perl/perl588
perl588_link -> /usr/standard_perl/perl588
/usr/standard_perl/perl58/bin から単純な「./perl -V」コマンドを実行しようとすると、古いバージョンは、独自のツリー構造に非常によく存在するにもかかわらず、Config.pm が見つからないと訴えます。
Linux では、perl が @INC のハードコードされたパスに従っているということですか。この種の動作は Linux でのみ観察されます。
古いバージョンで実行されているスクリプトがあるため、本番環境に移行できないのではないかと心配しています。この種の動作が存在する場合、修正が可能かどうか、またはこれが Linux の既知の動作であるかどうかを知る必要があります。
アップグレード後の古いリンクが新しいバージョンを指すようになり、リンクだけでは不十分で、LINUX でさらに何かを変更する必要があるため、これが原因である可能性はありませんか?
注: 1.Perl モジュールは、バージョンごとに個別に維持されます。 2.以前のバージョンのファイルを混在させていません。3. 運用サーバーで実行されているすべての古い perl スクリプトが破損しないようにし、代わりに最新バージョンを使用して Perl バージョンのメンテナンスを行います。3a.したがって、独自のバージョンではなく最新バージョンを指すリンクを微調整する必要があります。
観察: Linux でのみ、この動作が見られます。注目すべき点の 1 つは、古いバージョンのリンクを最新バージョンに微調整するときです。@INC は、LINUX ではなく、最新バージョンの INC に対して自動的に更新されます。
ここで何か不足していますか?