Opened 6 years ago

Closed 21 months ago

#56272 closed defect (fixed)

pangomm with +quartz variant does not compile as it requires pango with +x11 variant.

Reported by: jmgc Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version: 2.4.2
Keywords: pending Cc:
Port: pangomm

Description (last modified by ryandesign (Ryan Carsten Schmidt))

When installing inkscape with +quartz variant in High Sierra, the pangomm installation fails. I have revised the build process, and I have found that when I execute:

sudo port install pangomm +quartz

The result is:

--->  Computing dependencies for pangomm
--->  Configuring pangomm
Error: Failed to configure pangomm: pango must be installed with +x11.
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_x11_pangomm/pangomm/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port pangomm failed

It seems that pango +x11 is needed, instead of the +quartz variant, which seems to be the natural to use.

Change History (6)

comment:1 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Owner: set to dbevans
Status: newassigned

pango has x11 and quartz variants, and by default turns both of them on. It sounds like you have installed the pango port with the quartz variant turned on and the x11 variant turned off, so you at one point ran sudo port install pango +quartz -x11.

pangomm has x11 and quartz variants, and by default turns on only the x11 variant. You've shown that you tried to install pangomm turning on the quartz variant. This will be added to the default variants, so that what will actually be installed is pangomm with x11 and quartz variants turned on.

Whatever variants you want to turn on for the pangomm port, the same variants must be turned on for the pango port.

So your options are to either install pango with quartz only, and disable x11 (sudo port install pangomm +quartz -x11), or reinstall pango with both the quartz and x11 variants on (sudo port install pango +quartz +x11).

comment:2 Changed 6 years ago by jmgc

I have executed:

sudo port upgrade --enforce-variants pango +quartz +x11

As I think it has the same effect as (sudo port install pango +quartz +x11) but I avoid to uninstall it.

The result is:

Error: glib2: Variant quartz conflicts with x11
Error: Unable to open port: Error evaluating variants
Error: Follow https://guide.macports.org/#project.tickets to report a bug.

So it seems that glib2 does not allow to have x11 installed at the same time as quartz. As a result, pango cannot be installed with both options at the same time.

Thanks in any case.

comment:3 Changed 6 years ago by kencu (Ken)

true, most ports are either quartz or x11

$ port variants glib2
glib2 has the variants:
   quartz: Support for native Mac OS X graphics
     * conflicts with x11
   universal: Build for multiple architectures
[+]x11: Enable X11 support
     * conflicts with quartz

I find you can get into quite a mess once you have some mixed up x11 and quartz variants. I took devans advice to straighten this out that he gave us long ago. It was something like this, if you can stomach it:

sudo port deactivate active
sudo port -v install inkscape +quartz

Otherwise sorting out which ones are the wrong variant and which ones are the right variant (depending on what you're looking for) can cause you to lose hair.

Note that there are many more ports that work as x11 than will work as quartz variants, due to a few key ports that cannot build as quartz variants and therefore cascade down to a whole bunch of them that can't.

comment:4 Changed 3 years ago by mascguy (Christopher Nielsen)

Owner: changed from dbevans to mascguy

comment:5 Changed 21 months ago by mascguy (Christopher Nielsen)

Keywords: pending added

comment:6 Changed 21 months ago by mascguy (Christopher Nielsen)

Resolution: fixed
Status: assignedclosed

This was resolved long ago. Closing as fixed.

Note: See TracTickets for help on using tickets.