"Broken files found, but all associated ports are not in the index" error

Daniel J. Luke dluke at geeklair.net
Fri Dec 17 16:49:40 UTC 2021

On Dec 16, 2021, at 6:08 PM, Ryan Schmidt <ryandesign at macports.org> wrote:
>> Is there anything I can do about it?  I still have a ton of p5.26-* and p5.28-* ports installed, as well as p5.30-*.
> I recommend uninstalling all p5.26 ports. Use p5.28 equivalents instead.

Unfortunately, this cleanup is necessary because MacPorts has decided to support multiple versions of perl5 (which I think is a bad choice).

If MacPorts instead had a perl5 port that tracked the latest perl5, the end-use experience would be 'port upgrade outdated' and everything could continue to work (provided we bumped the revision of all of the p5- ports and/or added some update to base or to a portgroup to make that unnecessary).

Instead you need to periodically uninstall any p5.XX ports and older perl5 - install equivalent newer perl5 and p5.XX ports that you want to use directly ... and /also/ find any ports that you have installed that use a variant to specify which perl5 version they want and uninstall + reinstall them with the new variant that points to the newer perl5 that you want.

It's enough effort that I, personally, don't use MacPorts perl for anything other than MacPorts dependencies - and instead use perlbrew to manage a perl install for any of my stuff that uses perl.

Daniel J. Luke

More information about the macports-users mailing list