FYI: The meld port depends on the p5.36-xml-parser port, which does not exist

Joshua Root jmr at macports.org
Sat Nov 4 18:12:04 UTC 2023


> FYI: The meld port depends on the p5.36-xml-parser port, which does not exist
>
> sudo port -v -s install meld
> --->  Computing dependencies for meld........
> Error: Dependency 'p5.36-xml-parser' not found.
> Error: Followhttps://guide.macports.org/#project.tickets  if you
> believe there is a bug.
> Error: Processing of port meld failed

Meld itself does not have this dependency:

% port deps meld
Full Name: meld @3.21.0_2+x11
Extract Dependencies: xz
Build Dependencies:   intltool, itstool, libxml2, py311-distro, makeicns,
                       librsvg
Library Dependencies: desktop-file-utils, glib2, gtk3, gtksourceview4,
                       py311-cairo, py311-gobject3, shared-mime-info, 
python311
Runtime Dependencies: adwaita-icon-theme, gsettings-desktop-schemas, yelp

So it must be one of its dependencies. But on my machine there is no 
such dependency:

% port rdeps meld | grep -F p5.36-xml-parser
%

So it must be something that is changing dynamically, perhaps based on 
variants.

% port echo depends:xml-parser and rdepof:meld
intltool
pulseaudio

Looking at the portfiles for these two, intltool sets a fixed 
perl5.major, but pulseaudio does not. The perl5 portgroup has something 
of a misfeature where it sets the default perl to use based on the 
currently active variant of the perl5 port. So I guess you have 
perl5+perl5_36 installed.

Please file a ticket. The pulseaudio port may not even need the 
p5-xml-parser dependency (many ports that use intltool once added this 
as a poor workaround for an old bug). But if it does, or if it records 
the path to perl at build time and then uses it at runtime, it needs to 
set a fixed perl5.major.

- Josh



More information about the macports-users mailing list