Let's continue this only on the macports-users list; one list ought to be sufficient. On Nov 23, 2007, at 21:48, Douglas Philips wrote:
First thing I did was port -d selfupdate. port --version says: MacPorts 1.520 and goes into interactive mode.
I started out trying to install meld. That apparently is an infinite task. After waiting over 5 minutes for port to stop what seemed to be an infinite loop of scanning dependencies, I went after it by hand and started installing the pieces.
You can use the debug flag -d to see exactly what MacPorts is doing, to see if it's really in an infinite loop or just busy doing things. ("sudo port -d install foo") I'm not sure if it's the case here, but there is software (like gcc42) which requires hours to build even on today's fastest Macs.
Until I found an inconsistency. I went after port deps on all the parts looking for where the problem was. Had I known it would have taken me 3 hours, I wouldn't have bothered. But since I spent the time looking (and I started bottom up :(, so I didn't find this very quickly) I wanted to raise this issue:
(Eliding the branches of dependencies which aren't relevant to this conflict...)
meld depends on py-gnome and py-gtk2
py-gnome depends on libzvt and py-gtk2
libzvt depends on gnome_session depends on control-center depends on nautilus depends on eel depends gnome_menus depends on py25_gtk2 (!) depends on py25_cairo
py_gtk2 depends on py_cairo
I had trouble visualizing this, so I made a graph of these dependencies in Graphviz. Source dot file and resulting png image attached.
py25_cairo and py_cairo cannot be installed at the same time:
# port install py25-cairo ---> Activating py25-cairo 1.4.0_1 Error: Target org.macports.activate returned: Image error: /opt/ local/include/pycairo/pycairo.h is being used by the active py- cairo port. Please deactivate this port first, or use the -f flag to force the activation. Error: Status 1 encountered during processing.
Restated, the problem is that the meld port depends indirectly on both py-cairo and py25-cairo, but the two cannot be installed simultaneously. (I do not know whether it should be possible to install arbitrary py-foo and py25-foo simultaneously.)
On 11/24/07, Ryan Schmidt <ryandesign@macports.org> wrote:
py25_cairo and py_cairo cannot be installed at the same time:
# port install py25-cairo ---> Activating py25-cairo 1.4.0_1 Error: Target org.macports.activate returned: Image error: /opt/ local/include/pycairo/pycairo.h is being used by the active py- cairo port. Please deactivate this port first, or use the -f flag to force the activation. Error: Status 1 encountered during processing.
Restated, the problem is that the meld port depends indirectly on both py-cairo and py25-cairo, but the two cannot be installed simultaneously. (I do not know whether it should be possible to install arbitrary py-foo and py25-foo simultaneously.)
The graphic helped a good deal. I think I learned a while back that py-gtk2 is for python 2.4 while the more explicitly named py25-gtk2 goes with 2.5. So I think there is a redundancy, and potential conflict, there. Are there tools out there that help track these things down? The visuals are nice but they're not machine-readable, unfortunately ;-) -- Paul Beard / www.paulbeard.org/ <paulbeard@gmail.com/paulbeard@mac.com>
participants (2)
-
paul beard
-
Ryan Schmidt