1. 概要
発生は、2021年1月27日。
$ pkg version -vl "<"
help2man-1.47.16 < needs updating (index has 1.47.17)
という状況であります。
2. 現象
「portupgrade」すると
$ portupgrade -Rr help2man
[Reading data from pkg(8) ... - 471 packages found - done]
[Gathering depends for misc/help2man ................... done]
[Exclude up-to-date packages ........ done]
---> Upgrading 'help2man-1.47.16' to 'help2man-1.47.17' (misc/help2man)
---> Building '/usr/ports/misc/help2man'
===> Cleaning for help2man-1.47.17
===> License GPLv3 accepted by the user
===> help2man-1.47.17 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by help2man-1.47.17 for building
===> Extracting for help2man-1.47.17
=> SHA256 Checksum OK for help2man-1.47.17.tar.xz.
===> Patching for help2man-1.47.17
===> help2man-1.47.17 depends on package: p5-Locale-gettext>=0 - found
===> help2man-1.47.17 depends on package: gmake>=4.3 - found
===> help2man-1.47.17 depends on executable: msgfmt - found
===> help2man-1.47.17 depends on package: perl5>=5.32.r0<5.33 - found
===> help2man-1.47.17 depends on shared library: libintl.so - found (/usr/local/lib/libintl.so)
===> Configuring for help2man-1.47.17
configure: loading site script /usr/ports/Templates/config.site
checking for perl... perl
checking for module Locale::gettext... no
checking for msgfmt... /usr/local/bin/msgfmt
checking for gcc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking for library containing dlsym... none required
checking for library containing bindtextdomain... -lintl
configure: error: perl module Locale::gettext required
===> Script "configure" failed unexpectedly.
Rebuild lang/perl5.32 and devel/p5-Locale-gettext manually before contacting
maintainer.
*** Error code 1
Stop.
make[1]: stopped in /usr/ports/misc/help2man
*** Error code 1
Stop.
make: stopped in /usr/ports/misc/help2man
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20210127-33151-62584w env UPGRADE_TOOL=portupgrade UPGRADE_PORT=help2man-1.47.16 UPGRADE_PORT_VER=1.47.16 make
** Fix the problem and try again.
** Listing the failed packages (-:ignored / *:skipped / !:failed)
! misc/help2man (help2man-1.47.16) (configure error)
3. p5-Locale-gettext
これ、前ページと同じ現象か?
「perl」のバージョンは
$ perl --version
This is perl 5, version 32, subversion 1 (v5.32.1) built for amd64-freebsd-thread-multi
Copyright 1987-2021, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
と、大丈夫なので、「p5-Locale-gettext」だけインストールしなおしてみます。
cd /usr/ports/devel/p5-Locale-gettext
make deinstall clean
make
make install
で
$ portupgrade -Rr help2man
[Reading data from pkg(8) ... - 471 packages found - done]
[Gathering depends for misc/help2man ................... done]
[Exclude up-to-date packages ........ done]
---> Upgrading 'help2man-1.47.16' to 'help2man-1.47.17' (misc/help2man)
---> Building '/usr/ports/misc/help2man'
===> Cleaning for p5-Locale-gettext-1.07 ← ミソ
===> Cleaning for help2man-1.47.17
・・・ 略 ・・・
gmake[2]: Leaving directory '/usr/ports/misc/help2man/work/help2man-1.47.17'
===> Staging for help2man-1.47.17
===> help2man-1.47.17 depends on package: p5-Locale-gettext>=0 - found ← ミソ
===> help2man-1.47.17 depends on package: perl5>=5.32.r0<5.33 - found
===> help2man-1.47.17 depends on executable: indexinfo - found
===> Generating temporary packing list
gmake[2]: Entering directory '/usr/ports/misc/help2man/work/help2man-1.47.17'
build-aux/mkinstalldirs /usr/ports/misc/help2man/work/stage/usr/local/bin
・・・ 略 ・・・
---> Deinstalling 'help2man-1.47.16'
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):
Installed packages to be REMOVED:
help2man: 1.47.16
Number of packages to be removed: 1
[1/1] Deinstalling help2man-1.47.16...
[1/1] Deleting files for help2man-1.47.16: 100%
[Reading data from pkg(8) ... - 470 packages found - done]
---> Installing the new version via the port
===> Deinstalling for help2man
===> help2man not installed, skipping
===> Installing for help2man-1.47.17
===> Checking if help2man is already installed
===> Registering installation for help2man-1.47.17 as automatic
Installing help2man-1.47.17...
===> Cleaning for help2man-1.47.17
---> Cleaning out obsolete shared libraries
今回も、同じ要領でうまくいきました。