以前のPerlモジュールの再構築

以前のPerlモジュールの再構築

私はArch Linux()でシステムアップデートを実行しましたが、pacman -Syu以前のPerlモジュールに関する次の警告が表示されました。

WARNING: '/usr/lib/perl5/site_perl' contains data from at least 2 packages which will NOT be used by the installed perl interpreter.
 -> Run the following command to get a list of affected packages: pacman -Qqo '/usr/lib/perl5/site_perl'
WARNING: '/usr/lib/perl5/vendor_perl' contains data from at least 8 packages which will NOT be used by the installed perl interpreter.
 -> Run the following command to get a list of affected packages: pacman -Qqo '/usr/lib/perl5/vendor_perl'

推奨コマンドを実行すると、次のような結果が生成されます。

$ pacman -Qqo '/usr/lib/perl5/site_perl'
gscan2pdf
perl-filesys-df
$ pacman -Qqo '/usr/lib/perl5/vendor_perl'
perl-config-general
perl-data-uuid
perl-goo-canvas
perl-gtk2-ex-simple-list
perl-gtk2-imageview
perl-pdf-api2
perl-sane
perl-set-intspan

Perlバージョンを更新するとき、以前も同様の状況が発生しました。私の記憶が正しい場合は、Perlパッケージを再構築する必要がありましたが、そうする注文をどこで見つけたのか覚えていません。私はPerlの経験は全くありません。このモジュールは以下でのみ使用されます。gscan2pdf私はAURを介してインストールしました。これらのPerlモジュールをどのように再構築しますか?

答え1

私が使用しているperlライブラリを再構築してください。AURpacmanagerヤルト:

yaourt -S --asdeps perl-gnome2-gconf glade-perl perl-crypt-blowfish perl-gnome2-vte perl-expect perl-crypt-rijndael perl-gtk2-ex-simple-list perl-io-stty perl-io-tty perl-net-arp perl-yaml perl-crypt-cbc perl-gtk2-unique perl-socket6 uuid

したがって、ライブラリをあなたに提供されたライブラリに置き換えてくださいpacman

yaourt -S --asdeps gscan2pdf perl-filesys-df perl-config-general perl-data-uuid perl-goo-canvas perl-gtk2-ex-simple-list perl-gtk2-imageview perl-pdf-api2 perl-sane perl-set-intspan

2018年更新追加

Archのアップデートは、perl 5.28サポートされていないすべてのパッケージを再構築する必要があることを意味します。依存関係エラーを解決するソリューションは次のとおりです。削除する犯罪者尿素尿の割合 perlその後、アプリケーションは孤立perlライブラリを削除し、システムを更新します。

sudo pacman -Rns $(pacman -Qtdq)
sudo pacman -Syu

最後に再インストール尿素尿の割合 perlアプリケーション。

2019年の追加アップデート

アップデート後、古いライブラリに関する警告が表示さperl 5.30.0れます。今回は大規模なアップデートがあり、次のことを行う必要があります。pacmanperl

sudo pacman -R $conflicting_perl_mod_&_app
sudo pacman -Syu
# pacman now generates a warning for unused perl libs
pacman -R $(pacman -Qqo '/usr/lib/perl5/5.28')
pacman -S $perl_app
# optional remove orphaned packages
sudo pacman -Rns $(pacman -Qtdq)
sudo pacman -Syu

答え2

Stuart Cardallの回答に加えて、.shスクリプトを作成してリストされているPerlモジュールを再構築し、スクリプトを実行してPerlを更新するとその警告を受け取ることができます。

#!/bin/bash    
yaourt -S --asdeps --noconfirm $(pacman -Qqo '/usr/lib/perl5/vendor_perl')
yaourt -S --asdeps --noconfirm $(pacman -Qqo '/usr/lib/perl5/site_perl')

関連情報