Gavin Smith wrote: > As the log file shows, the Unicode::Collate module is not found.
Indeed: just running perl with a 1-line input $ perl use Unicode::Collate; produces an error on CentOS 8-stream, but not e.g. on Ubuntu. When I manually search for it in @INC, I don't see it installed: $ for d in <@INC as printed by 'perl -V'>; do find $d/ -name '*Collate*' done prints nothing about *Unicode/Collate* in CentOS 8-stream, where it prints e.g. /usr/lib/x86_64-linux-gnu/perl/5.34/Unicode/Collate.pm /usr/share/perl/5.34/Unicode/Collate on Ubuntu. > You can also run "corelist -a Unicode::Collate" to confirm it is a core > module. Yes, according to this command, Unicode::Collate version 1.19 should be present. > It's possible that a distribution does something to install fewer packages, The packaging source code for this module is here: https://git.centos.org/rpms/perl/blob/c8s/f/SPECS/perl.spec lines 2816..2832. Apparently they intended Unicode::Collate to be packaged as a separate dnf package. And indeed, $ dnf list | grep perl | grep -i unicode list both perl-Unicode-Normalize and perl-Unicode-Collate as available. But $ dnf list installed | grep perl | grep -i unicode shows that perl-Unicode-Normalize is installed, but perl-Unicode-Collate is not. > Is it possible that Unicode::Collate is installed on the system somewhere > but that we aren't finding it due to incorrect @INC? No. $ find /usr -name Collate.pm finds I18N/Collate.pm but no Unicode/Collate.pm. > Or is there any reason why Unicode::Collate wouldn't be installed? Was > Perl installed in an unusual way on this system? No. For comparison, here are the results for older CentOS distributions: - CentOS 8: The same 52 test failures. - CentOS 7: "make check" passes. - CentOS 6: "make check" passes. > I don't know what the solution to this is. You could, at configure time, test what's the exit code of 'perl' when run with 1-line input: use Unicode::Collate; Bruno