Opened 4 years ago
Closed 4 years ago
#61577 closed defect (fixed)
perl5.28 @5.28.3: Can't locate strict.pm in @INC
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | mojca (Mojca Miklavec) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.4 |
Keywords: | haspatch | Cc: | |
Port: | perl5 |
Description
perl5.28 fails to build in /opt/local on the arm64 macOS 11 buildbot worker:
DYLD_LIBRARY_PATH=/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_lang_perl5/perl5.28/work/perl-5.28.3 ./miniperl -Ilib autodoc.pl Can't locate strict.pm in @INC (you may need to install the strict module) (@INC contains: /cpan/AutoLoader/lib /dist/Carp/lib /dist/PathTools /dist/PathTools/lib /cpan/ExtUtils-Install/lib /cpan/ExtUtils-MakeMaker/lib /cpan/ExtUtils-Manifest/lib /cpan/File-Path/lib /ext/re /dist/Term-ReadLine/lib /dist/Exporter/lib /ext/File-Find/lib /cpan/Text-Tabs/lib /dist/constant/lib /cpan/version/lib /lib .) at autodoc.pl line 25. BEGIN failed--compilation aborted at autodoc.pl line 25. make: *** [pod/perlintern.pod] Error 2
This is weird because perl5.28 built fine in prefix /opt/bblocal on the same computer when I installed the ports that are used to run the buildbot software.
perl5.26 built fine in /opt/local on the same computer.
This buildbot worker is set up a little differently than the others, with /opt/local being the mountpoint of an entire separate APFS volume. I don't know if that could be contributing to the problem.
Change History (6)
comment:1 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
comment:2 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
I think this might be https://github.com/perl/perl5/issues/16903. They committed three changes in 5.29 and later to fix it; see https://github.com/perl/perl5/issues/16903#issuecomment-544100709. Maybe we can add those to the perl5.28 port.
comment:3 Changed 4 years ago by mojca (Mojca Miklavec)
I can try to prepare a merge request from those three fixes, but I cannot easily test them. I'm thinking about trying to do a full switch to 5.30 (or newer) and remove all 5.28 modules ASAP, as perl 5.28 is out of maintenance mode anyway.
Fixing perl 5.28 is probably faster, but we need to do the switch at some point.
comment:4 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
We still have older versions of perl in MacPorts, so it would be nice to fix this, even if we switch to 5.30 as the default.
I made a change to the arm64 buildbot worker: I changed the mountpoint of the volume from /opt/local to /opt. This has the advantage that /opt/local and /opt/bblocal are on the same disk again now so staging archives in mpbb is more efficient (they can be hardlinked instead of copied). I figured this change would have one of two consequences: either it would make perl5.28 build successfully in /opt/local, or it would make it fail to build in /opt/bblocal; looks like it has done the latter. I will try the above patches to see if they will fix this.
comment:5 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
Keywords: | haspatch added |
---|
The patches do appear to fix it so here is a PR: https://github.com/macports/macports-ports/pull/9194
comment:6 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
perl5.30 built fine in /opt/local on the same computer too.