#author("2025-06-21T08:17:28+09:00","default:kuji","kuji")
#author("2025-06-21T08:21:15+09:00","default:kuji","kuji")
CONTENTS
#contents
----
Lastmodified &lastmod;
----
*perl5.36 から perl5.40 へ更新 [#oba5a53c]
【参考URL】https://zenn.dev/hikosakasohtaro/articles/ecbdb9e4187b71

参考にしたサイトでは、Perlの更新に、portmaster を使用していたので、それに倣って
 # cd /usr/ports/lang/perl5.40
 # portmaster -Gdty --no-confirm .
としたが、アップグレード後に munin から、5分毎に、以下の様なエラーメールが届く様になった。

(コンソールから、munin-cron とコマンドを打っても同じ結果となるようだ)

 Can't locate Socket6.pm in @INC (you may need to install the Socket6 module)
 (@INC entries checked: /usr/local/lib/perl5/site_perl/mach/5.40 /usr/local/lib/perl5/site_perl
 /usr/local/lib/perl5/5.40/mach /usr/local/lib/perl5/5.40) at /usr/local/lib/perl5/site_perl/IO/Socket/INET6.pm line 38.
 BEGIN failed--compilation aborted at /usr/local/lib/perl5/site_perl/IO/Socket/INET6.pm line 40.
 Compilation failed in require at /usr/local/lib/perl5/site_perl/Munin/Master/Node.pm line 16.
 BEGIN failed--compilation aborted at /usr/local/lib/perl5/site_perl/Munin/Master/Node.pm line 16.
 Compilation failed in require at /usr/local/lib/perl5/site_perl/Munin/Master/UpdateWorker.pm line 15.
 BEGIN failed--compilation aborted at /usr/local/lib/perl5/site_perl/Munin/Master/UpdateWorker.pm line 15.
 Compilation failed in require at /usr/local/lib/perl5/site_perl/Munin/Master/Update.pm line 15.
 BEGIN failed--compilation aborted at /usr/local/lib/perl5/site_perl/Munin/Master/Update.pm line 15.
 Compilation failed in require at /usr/local/share/munin/munin-update line 12.
 BEGIN failed--compilation aborted at /usr/local/share/munin/munin-update line 12.

というエラーだったので、https://forums.freebsd.org/threads/compilation-failed-when-installing-munin-node.54437/ を参考にして

 portupgrade -rf --batch p5-Net-Server-2.014
 portupgrade -rf --batch p5-Socket6     ← こちらだけで良かったかもしれない。

を行ったところ、エラー内容が変化。

 Can't locate RRDs.pm in @INC (you may need to install the RRDs module) (@INC entries checked:
 /usr/local/lib/perl5/site_perl/mach/5.40 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.40/mach
 /usr/local/lib/perl5/5.40) at /usr/local/lib/perl5/site_perl/Munin/Master/UpdateWorker.pm line 17.
 BEGIN failed--compilation aborted at /usr/local/lib/perl5/site_perl/Munin/Master/UpdateWorker.pm line 17.
 Compilation failed in require at /usr/local/lib/perl5/site_perl/Munin/Master/Update.pm line 15.
 BEGIN failed--compilation aborted at /usr/local/lib/perl5/site_perl/Munin/Master/Update.pm line 15.
 Compilation failed in require at /usr/local/share/munin/munin-update line 12.
 BEGIN failed--compilation aborted at /usr/local/share/munin/munin-update line 12.

となったので、

 portupgrade -rf --batch rrdtool-1.9.0

を行ったところ、エラーメールは止まったようだ。

** エラーメールは止まったが、Apache のグラフが表示(更新)されていない [#hf65b8a2]
項目は、
 Apache accesses
 Apache processes
 Apache volume
の三つ。
 # munin-node-configure -suggest
してみると、
 Plugin                     | Used | Suggestions
 ------                     | ---- | -----------
 amavis                     | no   | no
 apache_accesses            | no   | no [LWP::UserAgent not found]
 apache_processes           | no   | no [LWP::UserAgent not found]
 apache_volume              | no   | no [LWP::UserAgent not found] 

[[Munin on HP ProLiant ML110 G7]] に有る様に、
 # portupgrade -f p5-libwww
などを行ってみたが、[LWP::UserAgent not found] のまま。良く解らなかったので、
 portupgrade -rfR --batch p5-libwww
してみたところ、Apacheのグラフが再描画され始めた。
 

#ref(50_025-06-20 165836.png)

----
* /usr/ports/UPDATING 20231017: の改編版 [#q22938cb]

 AFFECTS: users of lang/perl5*
  AUTHOR: delphij@FreeBSD.org
 
  The default Perl version has been switched to Perl 5.40.  If you are using
  binary packages to upgrade your system, you do not have anything to do, pkg
  upgrade will do the right thing. For the other people, assuming you are
  migrating from 5.36 to 5.40, do:
 
  First, add to /etc/make.conf:
 
  DEFAULT_VERSIONS+=  perl5=5.40
 
  Portupgrade users:
 	portupgrade -o lang/perl5.40 -f lang/perl5.36
 
 	  You can now remove the DEFAULT_VERSIONS line added earlier
 	  from /etc/make.conf
 
 	  Then you will need to rebuild everything that uses libperl.so, you
 	  can do so with:
 
 	portupgrade -f `pkg shlib -qR libperl.so.5.36`
 
 	  If, for some reason, this command fails at one point, it is safe to
 	  run it again, it will not rebuild what it already rebuilt, as the
 	  ports that have been rebuilt no longer depend on libperl.so.5.36 but
 	  on libperl.so.5.40.
 
  Portmaster users:
 	portmaster -o lang/perl5.40 lang/perl5.36
 
 	  You can now remove the DEFAULT_VERSIONS line added earlier
 	  from /etc/make.conf
 
 	  Then you will need to rebuild everything that uses libperl.so, you
 	  can do so with:
 
 	portmaster -f `pkg shlib -qR libperl.so.5.36`
 
 	  If, for some reason, this command fails at one point, it is safe to
 	  run it again, it will not rebuild what it already rebuilt, as the
 	  ports that have been rebuilt no longer depend on libperl.so.5.36 but
 	  on libperl.so.5.40.
 

 デフォルトの Perl バージョンが Perl 5.40 に変更されました。
 バイナリパッケージを使用してシステムをアップグレードする場合は、何もする必要はありません。
 pkg upgrade で適切に処理されます。
 それ以外の場合は、5.36 から 5.40 に移行すると仮定して、以下の手順を実行してください。
 
 まず、/etc/make.conf に以下を追加します。
 
 DEFAULT_VERSIONS+=  perl5=5.40
 
 Portupgrade ユーザー:
 
 portupgrade -o lang/perl5.40 -f lang/perl5.36
 
 先ほど追加したDEFAULT_VERSIONS行を/etc/make.confから削除できます。
 
 次に、libperl.so を使用するすべてのものを再構築する必要があります。
 次のコマンドで実行できます。
 
 portupgrade -f `pkg shlib -qR libperl.so.5.36`
 
 何らかの理由でこのコマンドが途中で失敗した場合でも、再度実行しても問題ありません。
 再構築されたポートは libperl.so.5.36 ではなく libperl.so.5.40 に依存するため、既に再構築されたものは再構築されません。
 
 Portmaster ユーザー:
 portmaster -o lang/perl5.40 lang/perl5.36
 先ほど追加したDEFAULT_VERSIONS行を/etc/make.confから削除できます。
 その後、libperl.soを使用するすべてのファイルを再構築する必要があります。
 以下のコマンドで実行できます。
 
 portmaster -f `pkg shlib -qR libperl.so.5.36`
 
 何らかの理由でこのコマンドが途中で失敗した場合でも、再度実行しても問題ありません。
 再構築されたポートは libperl.so.5.36 ではなく libperl.so.5.40 に依存するため、既に再構築されたものは再構築されません。
----
Total access &counter(total);:本日 &counter(today);:昨日 &counter(yesterday);
#counter([total|today|yesterday]);

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS